Add option GPGME_EXPORT_MODE_MINIMAL
[gpgme.git] / configure.ac
index 1d0be30..5fb09d4 100644 (file)
@@ -1,6 +1,7 @@
 # configure.ac for GPGME
 # Copyright (C) 2000 Werner Koch (dd9jn)
-# Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 g10 Code GmbH
+# Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
+#               2009, 2010  g10 Code GmbH
 # 
 # This file is part of GPGME.
 # 
@@ -31,10 +32,10 @@ min_automake_version="1.10"
 # specific feature can already be done under the assumption that the
 # SVN version is the most recent one in a branch.  To disable the SVN
 # version for the real release, set the my_issvn macro to no.
-m4_define(my_version, [1.2.1])
+m4_define(my_version, [1.3.1])
 m4_define(my_issvn, [yes])
 
-m4_define([svn_revision], m4_esyscmd([echo -n $( (svn info 2>/dev/null \
+m4_define([svn_revision], m4_esyscmd([printf "%d" $( (svn info 2>/dev/null \
             || echo 'Revision: 0')|sed -n '/^Revision:/ {s/[^0-9]//gp;q;}')]))
 AC_INIT([gpgme], 
         [my_version[]m4_if(my_issvn,[yes],[-svn[]svn_revision])],
@@ -66,6 +67,7 @@ AC_CONFIG_SRCDIR(src/gpgme.h.in)
 dnl FIXME: Enable this with autoconf 2.59.
 dnl AC_CONFIG_MACRO_DIR(m4)
 AM_CONFIG_HEADER(config.h)
+AC_CONFIG_MACRO_DIR([m4])
 AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
 AM_MAINTAINER_MODE
 AC_CANONICAL_HOST
@@ -95,10 +97,9 @@ AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of this package])
 AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version of this package])
 
 # Don't default to build static libs.
-AC_DISABLE_STATIC
-AC_LIBTOOL_WIN32_DLL
-AC_LIBTOOL_RC
-AC_PROG_LIBTOOL
+LT_PREREQ([2.2.6])
+LT_INIT([win32-dll disable-static])
+LT_LANG([Windows Resource])
 
 # For now we hardcode the use of version scripts.  It would be better
 # to write a test for this or even implement this within libtool.
@@ -207,8 +208,8 @@ AC_TYPE_UINTPTR_T
 # A simple compile time check in gpgme.h for GNU/Linux systems that
 # prevents a file offset bits mismatch between gpgme and the application.
 NEED__FILE_OFFSET_BITS=0
-case $ac_cv_sys_file_offset_bits in
-  no | unknown) ;;
+case "$ac_cv_sys_file_offset_bits" in
+  "" | no | unknown) ;;
   *)
   NEED__FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits
   ;;
@@ -224,6 +225,17 @@ if test "$GCC" = yes; then
     fi
 fi
 
+# Only used for debugging, so no serious test needed (for actual
+# functionality you have to test libc as well, this only tests the
+# compiler).
+AC_CACHE_CHECK([for __thread],[gpgme_cv_tls_works],
+   AC_COMPILE_IFELSE([__thread int foo;],
+     gpgme_cv_tls_works=yes,gpgme_cv_tls_works=no))
+if test "$gpgme_cv_tls_works" = yes; then
+  AC_DEFINE(HAVE_TLS, [1], [Define if __thread is supported])
+fi
+
+
 # Checks for library functions.
 AC_FUNC_FSEEKO
 
@@ -338,7 +350,7 @@ AC_DEFINE_UNQUOTED(NEED_GPGSM_VERSION, "$NEED_GPGSM_VERSION",
 AC_DEFINE_UNQUOTED(NEED_GPGCONF_VERSION, "$NEED_GPGCONF_VERSION",
                                         [Min. needed GPGCONF version.])
 AC_DEFINE_UNQUOTED(NEED_G13_VERSION, "$NEED_G13_VERSION",
-                                        [Min. needed G13 version.])
+                                    [Min. needed G13 version.])
 
 
 NO_OVERRIDE=no
@@ -634,13 +646,6 @@ AC_ARG_ENABLE(gpgconf-test,
          run_gpgconf_test=$enableval)
 AM_CONDITIONAL(RUN_GPGCONF_TESTS, test "$run_gpgconf_test" = "yes")
 
-# Only build if supported.
-AM_CONDITIONAL(BUILD_GPGCONF, test "$GPGCONF" != "no")
-if test "$GPGCONF" != "no"; then
-  AC_DEFINE(HAVE_GPGCONF, 1,
-            [Defined if we are building with gpgconf support.])
-fi
-
 
 NO_OVERRIDE=no
 AC_ARG_WITH(g13,
@@ -737,13 +742,6 @@ AC_ARG_ENABLE(g13-test,
          run_g13_test=$enableval)
 AM_CONDITIONAL(RUN_G13_TESTS, test "$run_g13_test" = "yes")
 
-# Only build if supported.
-AM_CONDITIONAL(BUILD_G13, test "$G13" != "no")
-if test "$G13" != "no"; then
-  AC_DEFINE(HAVE_G13, 1,
-            [Defined if we are building with g13 support.])
-fi
-
 
 # Check for funopen
 AC_CHECK_FUNCS(funopen)
@@ -760,6 +758,10 @@ if test $ac_cv_func_funopen != yes; then
     fi
 fi
 
+# Check for getgid etc
+AC_CHECK_FUNCS(getgid getegid)
+
+
 # Replacement functions.
 AC_REPLACE_FUNCS(stpcpy)
 # Check for unistd.h for setenv replacement function.
@@ -803,6 +805,17 @@ fi
 AM_CONDITIONAL(USE_DESCRIPTOR_PASSING, test "$use_descriptor_passing" = "yes")
 
 
+uiserver=no
+if test "$use_descriptor_passing" = "yes" && test "$have_libassuan" = "yes"; then
+  uiserver=yes
+fi
+if test "$uiserver" != "no"; then
+  AC_DEFINE(ENABLE_UISERVER, 1,
+            [Defined if we are building with uiserver support.])
+fi
+AM_CONDITIONAL(HAVE_UISERVER, test "$uiserver" != "no")
+
+
 AM_CONDITIONAL(BUILD_COMPLUS, test "$component_system" = "COM+")
 
 # Generate values for the DLL version info
@@ -850,6 +863,14 @@ LTLIBOBJS=`echo "$LIB@&t@OBJS" |
            sed 's,\.[[^.]]* ,.lo ,g;s,\.[[^.]]*$,.lo,'`
 AC_SUBST(LTLIBOBJS)
 
+# Some checks for gpgme-tool
+AC_CHECK_HEADER([argp.h])
+AC_CHECK_TYPES([error_t], [],
+   [AC_DEFINE([error_t], [int],
+   [Define to a type to use for `error_t' if it is not otherwise available.])],
+   [#include <errno.h>])
+
+
 # Last check.
 die=no
 if test "$require_libassuan" = "no"; then
@@ -904,6 +925,9 @@ echo "
 
         Assuan version:  $LIBASSUAN_VERSION
 
+       UI Server:       $uiserver
+        FD Passing:      $use_descriptor_passing
+
        GPGME Pthread:   $have_pthread
        GPGME Pth:       $have_pth
 "