Fix regression introduced by "editing only change".
[gnupg.git] / configure.ac
1 # configure.ac - for GnuPG 2.1
2 # Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
3 #               2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
4
5 # This file is part of GnuPG.
6
7 # GnuPG is free software; you can redistribute it and/or modify
8 # it under the terms of the GNU General Public License as published by
9 # the Free Software Foundation; either version 3 of the License, or
10 # (at your option) any later version.
11
12 # GnuPG is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 # GNU General Public License for more details.
16
17 # You should have received a copy of the GNU General Public License
18 # along with this program; if not, see <http://www.gnu.org/licenses/>.
19
20 # Process this file with autoconf to produce a configure script.
21 AC_PREREQ(2.61)
22 min_automake_version="1.10"
23
24 # Remember to change the version number immediately *after* a release.
25 # Set my_issvn to "yes" for non-released code.  Remember to run an
26 # "svn up" and "autogen.sh" right before creating a distribution.
27 m4_define([my_version], [2.1.0])
28 m4_define([my_issvn], [yes])
29
30 m4_define([svn_revision], m4_esyscmd([printf "%d" $(svn info 2>/dev/null \
31           | sed -n '/^Revision:/ s/[^0-9]//gp'|head -1)]))
32 m4_define([git_revision], m4_esyscmd([git branch -v 2>/dev/null \
33           | awk '/^\* / {printf "%s",$3}']))
34 AC_INIT([gnupg], 
35         [my_version[]m4_if(my_issvn,[yes],
36         [m4_if(git_revision,[],[-svn[]svn_revision],[-git[]git_revision])])],
37         [http://bugs.gnupg.org])
38 # Set development_version to yes if the minor number is odd or you
39 # feel that the default check for a development version is not
40 # sufficient.
41 development_version=no
42
43 NEED_GPG_ERROR_VERSION=1.8
44
45 NEED_LIBGCRYPT_API=1
46 NEED_LIBGCRYPT_VERSION=1.4.6
47
48 NEED_LIBASSUAN_API=2
49 NEED_LIBASSUAN_VERSION=2.0.0
50
51 NEED_KSBA_API=1
52 NEED_KSBA_VERSION=1.1.0
53
54
55 PACKAGE=$PACKAGE_NAME
56 PACKAGE_GT=${PACKAGE_NAME}2
57 VERSION=$PACKAGE_VERSION
58
59 AC_CONFIG_AUX_DIR(scripts)
60 AC_CONFIG_SRCDIR(sm/gpgsm.c)
61 AM_CONFIG_HEADER(config.h)
62 AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
63 AC_CANONICAL_HOST
64 AB_INIT
65
66 AC_GNU_SOURCE
67
68 # Some status variables.
69 have_gpg_error=no
70 have_libgcrypt=no 
71 have_libassuan=no
72 have_ksba=no
73 have_pth=no
74 have_libusb=no
75 have_adns=no
76
77 use_zip=yes
78 use_bzip2=yes
79 use_exec=yes
80 disable_keyserver_path=no
81 use_ccid_driver=yes
82 use_standard_socket=yes
83 dirmngr_auto_start=no
84
85 try_ks_ldap=no
86
87 GNUPG_BUILD_PROGRAM(gpg, yes)
88 GNUPG_BUILD_PROGRAM(gpgsm, yes)
89 GNUPG_BUILD_PROGRAM(agent, yes)
90 GNUPG_BUILD_PROGRAM(scdaemon, yes)
91 GNUPG_BUILD_PROGRAM(g13, yes)
92 GNUPG_BUILD_PROGRAM(dirmngr, yes)
93 GNUPG_BUILD_PROGRAM(tools, yes)
94 GNUPG_BUILD_PROGRAM(doc, yes)
95 GNUPG_BUILD_PROGRAM(symcryptrun, no)
96 GNUPG_BUILD_PROGRAM(gpgtar, no)
97
98 AC_SUBST(PACKAGE)
99 AC_SUBST(PACKAGE_GT)
100 AC_SUBST(VERSION)
101 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of this package])
102 AC_DEFINE_UNQUOTED(PACKAGE_GT, "$PACKAGE_GT",
103                                 [Name of this package for gettext])
104 AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version of this package])
105 AC_DEFINE_UNQUOTED(PACKAGE_BUGREPORT, "$PACKAGE_BUGREPORT",
106                                         [Bug report address])
107 AC_DEFINE_UNQUOTED(NEED_LIBGCRYPT_VERSION, "$NEED_LIBGCRYPT_VERSION",
108                                        [Required version of Libgcrypt])
109 AC_DEFINE_UNQUOTED(NEED_KSBA_VERSION, "$NEED_KSBA_VERSION",
110                                        [Required version of Libksba])
111
112
113
114 # The default is to use the modules from this package and the few
115 # other packages in a standard place; i.e where this package gets
116 # installed.  With these options it is possible to override these
117 # ${prefix} depended values with fixed paths, which can't be replaced
118 # at make time.  See also am/cmacros.am and the defaults in AH_BOTTOM.
119 AC_ARG_WITH(agent-pgm,
120     [  --with-agent-pgm=PATH  Use PATH as the default for the agent)],
121           GNUPG_AGENT_PGM="$withval", GNUPG_AGENT_PGM="" )
122 AC_SUBST(GNUPG_AGENT_PGM)
123 AM_CONDITIONAL(GNUPG_AGENT_PGM, test -n "$GNUPG_AGENT_PGM")
124 show_gnupg_agent_pgm="(default)"
125 test -n "$GNUPG_AGENT_PGM" && show_gnupg_agent_pgm="$GNUPG_AGENT_PGM"
126
127 AC_ARG_WITH(pinentry-pgm,
128     [  --with-pinentry-pgm=PATH  Use PATH as the default for the pinentry)],
129           GNUPG_PINENTRY_PGM="$withval", GNUPG_PINENTRY_PGM="" )
130 AC_SUBST(GNUPG_PINENTRY_PGM)
131 AM_CONDITIONAL(GNUPG_PINENTRY_PGM, test -n "$GNUPG_PINENTRY_PGM")
132 show_gnupg_pinentry_pgm="(default)"
133 test -n "$GNUPG_PINENTRY_PGM" && show_gnupg_pinentry_pgm="$GNUPG_PINENTRY_PGM"
134
135
136 AC_ARG_WITH(scdaemon-pgm,
137     [  --with-scdaemon-pgm=PATH  Use PATH as the default for the scdaemon)],
138           GNUPG_SCDAEMON_PGM="$withval", GNUPG_SCDAEMON_PGM="" )
139 AC_SUBST(GNUPG_SCDAEMON_PGM)
140 AM_CONDITIONAL(GNUPG_SCDAEMON_PGM, test -n "$GNUPG_SCDAEMON_PGM")
141 show_gnupg_scdaemon_pgm="(default)"
142 test -n "$GNUPG_SCDAEMON_PGM" && show_gnupg_scdaemon_pgm="$GNUPG_SCDAEMON_PGM"
143
144
145 AC_ARG_WITH(dirmngr-pgm,
146     [  --with-dirmngr-pgm=PATH  Use PATH as the default for the dirmngr)],
147           GNUPG_DIRMNGR_PGM="$withval", GNUPG_DIRMNGR_PGM="" )
148 AC_SUBST(GNUPG_DIRMNGR_PGM)
149 AM_CONDITIONAL(GNUPG_DIRMNGR_PGM, test -n "$GNUPG_DIRMNGR_PGM")
150 show_gnupg_dirmngr_pgm="(default)"
151 test -n "$GNUPG_DIRMNGR_PGM" && show_gnupg_dirmngr_pgm="$GNUPG_DIRMNGR_PGM"
152
153 AC_ARG_WITH(protect-tool-pgm,
154     [  --with-protect-tool-pgm=PATH  Use PATH as the default for the protect-tool)],
155           GNUPG_PROTECT_TOOL_PGM="$withval", GNUPG_PROTECT_TOOL_PGM="" )
156 AC_SUBST(GNUPG_PROTECT_TOOL_PGM)
157 AM_CONDITIONAL(GNUPG_PROTECT_TOOL_PGM, test -n "$GNUPG_PROTECT_TOOL_PGM")
158 show_gnupg_protect_tool_pgm="(default)"
159 test -n "$GNUPG_PROTECT_TOOL_PGM" \
160       && show_gnupg_protect_tool_pgm="$GNUPG_PROTECT_TOOL_PGM"
161
162 AC_ARG_WITH(dirmngr-ldap-pgm,
163     [  --with-dirmngr-ldap-pgm=PATH  Use PATH as the default for the dirmnge ldap wrapper)],
164           GNUPG_DIRMNGR_LDAP_PGM="$withval", GNUPG_DIRMNGR_LDAP_PGM="" )
165 AC_SUBST(GNUPG_DIRMNGR_LDAP_PGM)
166 AM_CONDITIONAL(GNUPG_DIRMNGR_LDAP_PGM, test -n "$GNUPG_DIRMNGR_LDAP_PGM")
167 show_gnupg_dirmngr_ldap_pgm="(default)"
168 test -n "$GNUPG_DIRMNGR_LDAP_PGM" \
169       && show_gnupg_dirmngr_ldap_pgm="$GNUPG_DIRMNGR_LDAP_PGM"
170
171
172 # Some folks want to use only the agent from this packet.  Make it
173 # easier for them by providing the configure option
174 # --enable-only-agent.
175 AC_ARG_ENABLE(agent-only,
176     AC_HELP_STRING([--enable-agent-only],[build only the gpg-agent]),
177     build_agent_only=$enableval)
178
179 # SELinux support includes tracking of sensitive files to avoid
180 # leaking their contents through processing these files by gpg itself
181 AC_MSG_CHECKING([whether SELinux support is requested])
182 AC_ARG_ENABLE(selinux-support,
183               AC_HELP_STRING([--enable-selinux-support],
184                              [enable SELinux support]),
185               selinux_support=$enableval, selinux_support=no)
186 AC_MSG_RESULT($selinux_support)
187
188 # Allow disabling of zip support.
189 # This is in general not a good idea because according to rfc4880 OpenPGP
190 # implementations SHOULD support ZLIB.
191 AC_MSG_CHECKING([whether to enable the ZIP and ZLIB compression algorithm])
192 AC_ARG_ENABLE(zip,
193    AC_HELP_STRING([--disable-zip],
194                   [disable the ZIP and ZLIB compression algorithm]),
195    use_zip=$enableval)
196 AC_MSG_RESULT($use_zip)
197
198 # Allow disabling of bzib2 support.
199 # It is defined only after we confirm the library is available later
200 AC_MSG_CHECKING([whether to enable the BZIP2 compression algorithm])
201 AC_ARG_ENABLE(bzip2,
202    AC_HELP_STRING([--disable-bzip2],[disable the BZIP2 compression algorithm]),
203    use_bzip2=$enableval)
204 AC_MSG_RESULT($use_bzip2)
205
206 # Configure option to allow or disallow execution of external
207 # programs, like a photo viewer.
208 AC_MSG_CHECKING([whether to enable external program execution])
209 AC_ARG_ENABLE(exec,
210     AC_HELP_STRING([--disable-exec],[disable all external program execution]),
211     use_exec=$enableval)
212 AC_MSG_RESULT($use_exec)
213 if test "$use_exec" = no ; then
214     AC_DEFINE(NO_EXEC,1,[Define to disable all external program execution])
215 fi
216
217 if test "$use_exec" = yes ; then
218   AC_MSG_CHECKING([whether to enable photo ID viewing])
219   AC_ARG_ENABLE(photo-viewers,
220       [  --disable-photo-viewers disable photo ID viewers],
221       [if test "$enableval" = no ; then
222          AC_DEFINE(DISABLE_PHOTO_VIEWER,1,[define to disable photo viewing])
223       fi],enableval=yes)
224   gnupg_cv_enable_photo_viewers=$enableval
225   AC_MSG_RESULT($enableval)
226
227   if test "$gnupg_cv_enable_photo_viewers" = yes ; then
228     AC_MSG_CHECKING([whether to use a fixed photo ID viewer])
229     AC_ARG_WITH(photo-viewer,
230         [  --with-photo-viewer=FIXED_VIEWER  set a fixed photo ID viewer],
231         [if test "$withval" = yes ; then
232            withval=no
233         elif test "$withval" != no ; then
234            AC_DEFINE_UNQUOTED(FIXED_PHOTO_VIEWER,"$withval",
235                             [if set, restrict photo-viewer to this])
236         fi],withval=no)
237     AC_MSG_RESULT($withval)
238   fi
239
240   AC_MSG_CHECKING([whether to enable external keyserver helpers])
241   AC_ARG_ENABLE(keyserver-helpers,
242       [  --disable-keyserver-helpers  disable all external keyserver support],
243       [if test "$enableval" = no ; then
244          AC_DEFINE(DISABLE_KEYSERVER_HELPERS,1,
245                   [define to disable keyserver helpers])
246       fi],enableval=yes)
247   gnupg_cv_enable_keyserver_helpers=$enableval
248   AC_MSG_RESULT($enableval)
249
250   if test "$gnupg_cv_enable_keyserver_helpers" = yes ; then
251     # LDAP is defined only after we confirm the library is available later
252     AC_MSG_CHECKING([whether LDAP keyserver support is requested])
253     AC_ARG_ENABLE(ldap,
254       AC_HELP_STRING([--disable-ldap],[disable LDAP keyserver interface only]),
255       try_ks_ldap=$enableval, try_ks_ldap=yes)
256     AC_MSG_RESULT($try_ks_ldap)
257
258     AC_MSG_CHECKING([whether HKP keyserver support is requested])
259     AC_ARG_ENABLE(hkp,
260       AC_HELP_STRING([--disable-hkp],[disable HKP keyserver interface only]),
261       try_hkp=$enableval, try_hkp=yes)
262     AC_MSG_RESULT($try_hkp)
263
264     AC_MSG_CHECKING([whether finger key fetching support is requested])
265     AC_ARG_ENABLE(finger,
266       AC_HELP_STRING([--disable-finger],
267         [disable finger key fetching interface only]),
268       try_finger=$enableval, try_finger=yes)
269     AC_MSG_RESULT($try_finger)
270
271     AC_MSG_CHECKING([whether generic object key fetching support is requested])
272     AC_ARG_ENABLE(generic,
273       AC_HELP_STRING([--disable-generic],
274         [disable generic object key fetching interface only]),
275       try_generic=$enableval, try_generic=yes)
276     AC_MSG_RESULT($try_generic)
277
278     AC_MSG_CHECKING([whether email keyserver support is requested])
279     AC_ARG_ENABLE(mailto,
280       AC_HELP_STRING([--enable-mailto],
281         [enable email keyserver interface only]),
282       try_mailto=$enableval, try_mailto=no)
283     AC_MSG_RESULT($try_mailto)
284   fi
285
286   AC_MSG_CHECKING([whether keyserver exec-path is enabled])
287   AC_ARG_ENABLE(keyserver-path,
288       AC_HELP_STRING([--disable-keyserver-path],
289         [disable the exec-path option for keyserver helpers]),
290       [if test "$enableval" = no ; then
291          disable_keyserver_path=yes
292       fi],enableval=yes)
293   AC_MSG_RESULT($enableval)
294 fi
295
296
297 #
298 # Check for the key/uid cache size.  This can't be zero, but can be
299 # pretty small on embedded systems.  This is used for the gpg part.
300 #
301 AC_MSG_CHECKING([for the size of the key and uid cache])
302 AC_ARG_ENABLE(key-cache,
303         AC_HELP_STRING([--enable-key-cache=SIZE],
304                        [Set key cache to SIZE (default 4096)]),,enableval=4096)
305 if test "$enableval" = "no"; then
306    enableval=5
307 elif test "$enableval" = "yes" || test "$enableval" = ""; then
308    enableval=4096
309 fi
310 changequote(,)dnl
311 key_cache_size=`echo "$enableval" | sed 's/[A-Za-z]//g'`
312 changequote([,])dnl
313 if test "$enableval" != "$key_cache_size" || test "$key_cache_size" -lt 5; then
314    AC_MSG_ERROR([invalid key-cache size])
315 fi
316 AC_MSG_RESULT($key_cache_size)
317 AC_DEFINE_UNQUOTED(PK_UID_CACHE_SIZE,$key_cache_size,
318                   [Size of the key and UID caches])
319
320
321
322 #
323 # Check whether we want to use Linux capabilities
324 #
325 AC_MSG_CHECKING([whether use of capabilities is requested])
326 AC_ARG_WITH(capabilities,
327     [  --with-capabilities     use linux capabilities [default=no]],
328 [use_capabilities="$withval"],[use_capabilities=no])
329 AC_MSG_RESULT($use_capabilities)
330
331
332 #
333 # Allow disabling of internal CCID support.
334 # It is defined only after we confirm the library is available later
335 #
336 AC_MSG_CHECKING([whether to enable the internal CCID driver])
337 AC_ARG_ENABLE(ccid-driver,
338               AC_HELP_STRING([--disable-ccid-driver],
339                              [disable the internal CCID driver]),
340               use_ccid_driver=$enableval)
341 AC_MSG_RESULT($use_ccid_driver)
342
343
344 # Dirmngr is nowadays a system service and thus it usually does no
345 # make sense to start it as needed.  However on some systems this is
346 # possible; this option enable the feature.
347 #
348 AC_MSG_CHECKING([whether to auto start dirmngr])
349 AC_ARG_ENABLE(dirmngr-auto-start,
350               AC_HELP_STRING([--enable-dirmngr-auto-start],
351                              [enable auto starting of the dirmngr]),
352               dirmngr_auto_start=$enableval)
353 AC_MSG_RESULT($dirmngr_auto_start)
354 if test "$dirmngr_auto_start" = yes ; then
355     AC_DEFINE(USE_DIRMNGR_AUTO_START,1,
356               [Define to enable auto starting of the dirmngr])
357 fi
358
359
360 #
361 # To avoid double inclusion of config.h which might happen at some
362 # places, we add the usual double inclusion protection at the top of
363 # config.h.
364 #
365 AH_TOP([
366 #ifndef GNUPG_CONFIG_H_INCLUDED
367 #define GNUPG_CONFIG_H_INCLUDED
368 ])
369
370 #
371 # Stuff which goes at the bottom of config.h.
372 #
373 AH_BOTTOM([
374 /* This is the major version number of GnuPG so that
375    source included files can test for this.  Note, that
376    we use 2 here even for GnuPG 1.9.x. */
377 #define GNUPG_MAJOR_VERSION 2
378
379 /* Now to separate file name parts.
380    Please note that the string version must not contain more
381    than one character because the code assumes strlen()==1 */
382 #ifdef HAVE_DOSISH_SYSTEM
383 #define DIRSEP_C '\\'
384 #define DIRSEP_S "\\"
385 #define EXTSEP_C '.'
386 #define EXTSEP_S "."
387 #define PATHSEP_C ';'
388 #define PATHSEP_S ";"
389 #define EXEEXT_S ".exe"
390 #else
391 #define DIRSEP_C '/'
392 #define DIRSEP_S "/"
393 #define EXTSEP_C '.'
394 #define EXTSEP_S "."
395 #define PATHSEP_C ':'
396 #define PATHSEP_S ":"
397 #define EXEEXT_S ""
398 #endif
399
400 /* This is the same as VERSION, but should be overridden if the
401    platform cannot handle things like dots '.' in filenames. Set
402    SAFE_VERSION_DOT and SAFE_VERSION_DASH to whatever SAFE_VERSION
403    uses for dots and dashes. */
404 #define SAFE_VERSION VERSION
405 #define SAFE_VERSION_DOT  '.'
406 #define SAFE_VERSION_DASH '-'
407
408 /* Some global constants. */
409 #ifdef HAVE_DOSISH_SYSTEM
410 # ifdef HAVE_DRIVE_LETTERS
411 #  define GNUPG_DEFAULT_HOMEDIR "c:/gnupg"
412 # else
413 #  define GNUPG_DEFAULT_HOMEDIR "/gnupg"
414 # endif
415 #elif defined(__VMS)
416 #define GNUPG_DEFAULT_HOMEDIR "/SYS$LOGIN/gnupg" 
417 #else
418 #define GNUPG_DEFAULT_HOMEDIR "~/.gnupg"
419 #endif 
420 #define GNUPG_PRIVATE_KEYS_DIR "private-keys-v1.d"
421
422 /* For some systems (DOS currently), we hardcode the path here.  For
423    POSIX systems the values are constructed by the Makefiles, so that
424    the values may be overridden by the make invocations; this is to
425    comply with the GNU coding standards.  Note that these values are
426    only defaults.  */
427 #ifdef HAVE_DOSISH_SYSTEM
428 # ifdef HAVE_DRIVE_LETTERS
429 #  define GNUPG_BINDIR      "c:\\gnupg"
430 #  define GNUPG_LIBEXECDIR  "c:\\gnupg"
431 #  define GNUPG_LIBDIR      "c:\\gnupg"
432 #  define GNUPG_DATADIR     "c:\\gnupg"
433 #  define GNUPG_SYSCONFDIR  "c:\\gnupg"
434 # else
435 #  define GNUPG_BINDIR      "\\gnupg"
436 #  define GNUPG_LIBEXECDIR  "\\gnupg"
437 #  define GNUPG_LIBDIR      "\\gnupg"
438 #  define GNUPG_DATADIR     "\\gnupg"
439 #  define GNUPG_SYSCONFDIR  "\\gnupg"
440 # endif
441 #endif
442
443 /* Derive some other constants. */
444 #if !(defined(HAVE_FORK) && defined(HAVE_PIPE) && defined(HAVE_WAITPID))
445 #define EXEC_TEMPFILE_ONLY
446 #endif
447
448
449 /* We didn't define endianness above, so get it from OS macros.  This
450    is intended for making fat binary builds on OS X. */
451 #if !defined(BIG_ENDIAN_HOST) && !defined(LITTLE_ENDIAN_HOST)
452 #if defined(__BIG_ENDIAN__)
453 #define BIG_ENDIAN_HOST 1
454 #elif defined(__LITTLE_ENDIAN__)
455 #define LITTLE_ENDIAN_HOST 1
456 #else
457 #error "No endianness found"
458 #endif
459 #endif
460
461
462 /* Hack used for W32: ldap.m4 also tests for the ASCII version of
463    ldap_start_tls_s because that is the actual symbol used in the
464    library.  winldap.h redefines it to our commonly used value,
465    thus we define our usual macro here.  */
466 #ifdef HAVE_LDAP_START_TLS_SA
467 # ifndef HAVE_LDAP_START_TLS_S
468 #  define HAVE_LDAP_START_TLS_S 1
469 # endif
470 #endif
471
472
473 /* Tell libgcrypt not to use its own libgpg-error implementation. */
474 #define USE_LIBGPG_ERROR 1
475
476 /* We use jnlib, so tell other modules about it.  */
477 #define HAVE_JNLIB_LOGGING 1
478
479 /* Our HTTP code is used in estream mode.  */
480 #define HTTP_USE_ESTREAM 1
481
482 /* Under W32 we do an explicit socket initialization, thus we need to
483    avoid the on-demand initialization which would also install an atexit
484    handler.  */
485 #define HTTP_NO_WSASTARTUP
486
487 /* We always include support for the OpenPGP card.  */
488 #define ENABLE_CARD_SUPPORT 1
489
490 /* We explicitly need to disable PTH's soft mapping as Debian
491    currently enables it by default for no reason. */
492 #define PTH_SYSCALL_SOFT 0
493
494 /* We want to use the libgcrypt provided memory allocation for
495    asprintf.  */
496 #define _ESTREAM_PRINTF_MALLOC        gcry_malloc
497 #define _ESTREAM_PRINTF_FREE          gcry_free
498 #define _ESTREAM_PRINTF_EXTRA_INCLUDE "../common/util.h"
499
500 /* Under Windows we use the gettext code from libgpg-error.  */
501 #define GPG_ERR_ENABLE_GETTEXT_MACROS
502
503 /* Under WindowsCE we use the strerror replacement from libgpg-error.  */
504 #define GPG_ERR_ENABLE_ERRNO_MACROS
505
506 #endif /*GNUPG_CONFIG_H_INCLUDED*/
507 ])
508
509
510 AM_MAINTAINER_MODE
511
512 # Checks for programs.
513 AC_MSG_NOTICE([checking for programs])
514 AC_PROG_MAKE_SET
515 AM_SANITY_CHECK
516 missing_dir=`cd $ac_aux_dir && pwd`
517 AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir)
518 AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
519 AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir)
520 AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
521 AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
522 AC_PROG_AWK
523 AC_PROG_CC
524 AC_PROG_CPP
525 AM_PROG_CC_C_O
526 if test "x$ac_cv_prog_cc_c89" = "xno" ; then
527   AC_MSG_ERROR([[No C-89 compiler found]])
528 fi
529 AC_PROG_INSTALL
530 AC_PROG_LN_S
531 AC_PROG_RANLIB
532 AC_CHECK_TOOL(AR, ar, :)
533 AC_PATH_PROG(PERL,"perl")
534 AC_CHECK_TOOL(WINDRES, windres, :)
535 AC_ISC_POSIX
536 gl_EARLY
537 AC_SYS_LARGEFILE
538 GNUPG_CHECK_USTAR
539
540 # We need to compile and run a program on the build machine.  A
541 # comment in libgpg-error says that the AC_PROG_CC_FOR_BUILD macro in
542 # the AC archive is broken for autoconf 2.57.  Given that there is no
543 # newer version of that macro, we assume that it is also broken for
544 # autoconf 2.61 and thus we use a simple but usually sufficient
545 # approach.
546 AC_MSG_CHECKING(for cc for build)
547 if test "$cross_compiling" = "yes"; then
548   CC_FOR_BUILD="${CC_FOR_BUILD-cc}"
549 else
550   CC_FOR_BUILD="${CC_FOR_BUILD-$CC}"
551 fi
552 AC_MSG_RESULT($CC_FOR_BUILD)
553 AC_ARG_VAR(CC_FOR_BUILD,[build system C compiler])
554
555
556
557 try_gettext=yes
558 have_dosish_system=no
559 have_w32_system=no
560 have_w32ce_system=no
561 use_simple_gettext=no
562 use_ldapwrapper=yes
563 mmap_needed=yes
564 case "${host}" in
565     *-mingw32*)
566         # special stuff for Windoze NT
567         ac_cv_have_dev_random=no
568         AC_DEFINE(USE_ONLY_8DOT3,1,
569                   [Set this to limit filenames to the 8.3 format])
570         AC_DEFINE(USE_SIMPLE_GETTEXT,1,
571                   [Because the Unix gettext has too much overhead on
572                    MingW32 systems and these systems lack Posix functions,
573                    we use a simplified version of gettext])
574         disable_keyserver_path=yes
575         have_dosish_system=yes
576         have_w32_system=yes
577         use_ldapwrapper=no  # Fixme: Do this only for CE.
578         case "${host}" in 
579           *-mingw32ce*)
580             have_w32ce_system=yes
581             ;;
582           *)
583             AC_DEFINE(HAVE_DRIVE_LETTERS,1,
584                       [Defined if the OS supports drive letters.])
585             ;;
586         esac
587         try_gettext="no"
588         use_simple_gettext=yes
589         mmap_needed=no
590         ;;
591     i?86-emx-os2 | i?86-*-os2*emx )
592         # OS/2 with the EMX environment
593         ac_cv_have_dev_random=no
594         AC_DEFINE(HAVE_DRIVE_LETTERS)
595         have_dosish_system=yes
596         try_gettext="no"
597         ;;
598
599     i?86-*-msdosdjgpp*)
600         # DOS with the DJGPP environment
601         ac_cv_have_dev_random=no
602         AC_DEFINE(HAVE_DRIVE_LETTERS)
603         have_dosish_system=yes
604         try_gettext="no"
605         ;;
606
607     *-*-freebsd*)
608        # FreeBSD
609        CPPFLAGS="$CPPFLAGS -I/usr/local/include"
610        LDFLAGS="$LDFLAGS -L/usr/local/lib"
611        ;;
612
613     *-*-hpux*)
614         if test -z "$GCC" ; then
615             CFLAGS="$CFLAGS -Ae -D_HPUX_SOURCE"
616         fi
617         ;;
618     *-dec-osf4*)
619         if test -z "$GCC" ; then
620             # Suppress all warnings
621             # to get rid of the unsigned/signed char mismatch warnings.
622             CFLAGS="$CFLAGS -w"
623         fi
624         ;;
625     *-dec-osf5*)
626         if test -z "$GCC" ; then
627             # Use the newer compiler `-msg_disable ptrmismatch1' to
628             # get rid of the unsigned/signed char mismatch warnings.
629             # Using this may hide other pointer mismatch warnings, but
630             # it at least lets other warning classes through
631             CFLAGS="$CFLAGS -msg_disable ptrmismatch1"
632         fi
633         ;;
634     m68k-atari-mint)
635         ;;
636     *)
637        ;;
638 esac
639
640 if test "$have_dosish_system" = yes; then
641    AC_DEFINE(HAVE_DOSISH_SYSTEM,1,
642              [Defined if we run on some of the PCDOS like systems 
643               (DOS, Windoze. OS/2) with special properties like
644               no file modes, case insensitive file names and preferred
645               use of backslashes as directory name separators.])
646 fi
647 AM_CONDITIONAL(HAVE_DOSISH_SYSTEM, test "$have_dosish_system" = yes)
648
649 AM_CONDITIONAL(USE_SIMPLE_GETTEXT, test x"$use_simple_gettext" = xyes)
650
651 if test "$have_w32_system" = yes; then
652    AC_DEFINE(HAVE_W32_SYSTEM,1, [Defined if we run on a W32 API based system])
653    if test "$have_w32ce_system" = yes; then
654       AC_DEFINE(HAVE_W32CE_SYSTEM,1,[Defined if we run on WindowsCE])
655    fi
656 fi
657 AM_CONDITIONAL(HAVE_W32_SYSTEM, test "$have_w32_system" = yes)
658 AM_CONDITIONAL(HAVE_W32CE_SYSTEM, test "$have_w32ce_system" = yes)
659
660 if test "$use_ldapwrapper" = yes; then
661    AC_DEFINE(USE_LDAPWRAPPER,1, [Build dirmngr with LDAP wrapper process])
662 fi
663 AM_CONDITIONAL(USE_LDAPWRAPPER, test "$use_ldapwrapper" = yes)
664
665 if test "$disable_keyserver_path" = yes; then
666     AC_DEFINE(DISABLE_KEYSERVER_PATH,1,
667               [Defined to disable exec-path for keyserver helpers])
668 fi
669
670 #
671 # Allows enabling the use of a standard socket by default This is
672 # gpg-agent's option --[no-]use-standard-socket.  For Windows we force
673 # the use of this.
674 #
675 AC_MSG_CHECKING([whether to use a standard socket by default])
676 AC_ARG_ENABLE(standard-socket,
677               AC_HELP_STRING([--disable-standard-socket],
678                              [don't use a standard socket by default]),
679               use_standard_socket=$enableval)
680 tmp=""
681 if test "$use_standard_socket" != yes; then
682   if test "$have_w32_system" = yes; then
683     use_standard_socket=yes
684     tmp=" (forced)"
685   fi
686 fi
687 AC_MSG_RESULT($use_standard_socket$tmp)
688 if test "$use_standard_socket" = yes; then
689   AC_DEFINE(USE_STANDARD_SOCKET,1,
690             [Use the standard socket for the agent by default])
691 fi
692
693
694 # (These need to go after AC_PROG_CC so that $EXEEXT is defined)
695 AC_DEFINE_UNQUOTED(EXEEXT,"$EXEEXT",[The executable file extension, if any])
696
697 if test x"$try_hkp" = xyes ; then
698   AC_SUBST(GPGKEYS_HKP,"gpg2keys_hkp$EXEEXT")
699 fi
700
701 if test x"$try_finger" = xyes ; then
702   AC_SUBST(GPGKEYS_FINGER,"gpg2keys_finger$EXEEXT")
703 fi
704
705
706
707 #
708 # Checks for libraries.
709 #
710 AC_MSG_NOTICE([checking for libraries])
711
712
713 #
714 # libgpg-error is a library with error codes shared between GnuPG
715 # related projects.
716 #
717 AM_PATH_GPG_ERROR("$NEED_GPG_ERROR_VERSION",
718                   have_gpg_error=yes,have_gpg_error=no)
719
720
721 #
722 # Libgcrypt is our generic crypto library
723 #
724 AM_PATH_LIBGCRYPT("$NEED_LIBGCRYPT_API:$NEED_LIBGCRYPT_VERSION",
725         have_libgcrypt=yes,have_libgcrypt=no)
726
727 AC_CACHE_CHECK([whether Libgcrypt support ECDH], gnupg_cv_gcry_pk_ecdh,
728                [ _gnupg_gcry_save_cflags=$CFLAGS
729                  CFLAGS="$CFLAGS $LIBGCRYPT_CFLAGS"
730                  AC_TRY_COMPILE(
731                    [#include <gcrypt>],
732                    [ return GCRY_PK_ECDH; ],
733                    gnupg_cv_gcry_pk_ecdh=yes,
734                    gnupg_cv_gcry_pk_ecdh=no)
735                  CFLAGS=$_gnupg_gcry_save_cflags])
736 if test "$gnupg_cv_gcry_pk_ecdh" = yes; then
737   AC_DEFINE([HAVE_GCRY_PK_ECDH], 1,
738             [Define if gcrypt.h has the enum value for ECDH.])
739 fi
740
741
742 #
743 # libassuan is used for IPC
744 #
745 AM_PATH_LIBASSUAN("$NEED_LIBASSUAN_API:$NEED_LIBASSUAN_VERSION",
746                   have_libassuan=yes,have_libassuan=no)
747 if test "$have_libassuan" = "yes"; then
748   AC_DEFINE_UNQUOTED(GNUPG_LIBASSUAN_VERSION, "$libassuan_version",
749                      [version of the libassuan library])
750 fi
751
752
753
754 #
755 # libksba is our X.509 support library
756 #
757 AM_PATH_KSBA("$NEED_KSBA_API:$NEED_KSBA_VERSION",have_ksba=yes,have_ksba=no)
758
759
760 #
761 # libusb allows us to use the integrated CCID smartcard reader driver.
762 #
763 # FiXME: Use GNUPG_CHECK_LIBUSB and modify to use separate AC_SUBSTs.
764 if test "$use_ccid_driver" = yes ; then
765   AC_CHECK_LIB(usb, usb_bulk_write,
766                 [ LIBUSB_LIBS="$LIBUSB_LIBS -lusb"
767                   AC_DEFINE(HAVE_LIBUSB,1,
768                            [defined if libusb is available])
769                   have_libusb=yes
770                ])
771   AC_CHECK_FUNCS(usb_create_match)
772 fi
773 AC_SUBST(LIBUSB_LIBS)
774
775 #
776 # Check wether it is necessary to link against libdl.
777 #
778 gnupg_dlopen_save_libs="$LIBS"
779 LIBS=""
780 AC_SEARCH_LIBS(dlopen, c dl,,,)
781 DL_LIBS=$LIBS
782 AC_SUBST(DL_LIBS)
783 LIBS="$gnupg_dlopen_save_libs"
784
785 # Checks for g13
786
787 AC_PATH_PROG(ENCFS, encfs, /usr/bin/encfs)
788 AC_DEFINE_UNQUOTED(ENCFS,
789         "${ENCFS}", [defines the filename of the encfs program])
790
791 AC_PATH_PROG(FUSERMOUNT, fusermount, /usr/bin/fusermount)
792 AC_DEFINE_UNQUOTED(FUSERMOUNT,
793         "${FUSERMOUNT}", [defines the filename of the fusermount program])
794
795
796 # Checks for dirmngr
797
798
799 #
800 # Checks for symcryptrun:
801 #
802
803 # libutil has openpty() and login_tty().
804 AC_CHECK_LIB(util, openpty,
805               [ LIBUTIL_LIBS="$LIBUTIL_LIBS -lutil"
806                 AC_DEFINE(HAVE_LIBUTIL,1,
807                          [defined if libutil is available])
808              ])
809 AC_SUBST(LIBUTIL_LIBS)
810
811 # shred is used to clean temporary plain text files.
812 AC_PATH_PROG(SHRED, shred, /usr/bin/shred)
813 AC_DEFINE_UNQUOTED(SHRED,
814         "${SHRED}", [defines the filename of the shred program])
815
816
817 #
818 # Check whether the GNU Pth library is available
819 # Note, that we include a Pth emulation for W32.
820 #
821 if test "$have_w32_system" = yes; then
822   GNUPG_PATH_PTH([2.0.4])
823 else
824   GNUPG_PATH_PTH
825 fi
826 if test "$have_pth" = "yes"; then
827   AC_DEFINE(USE_GNU_PTH, 1,
828               [Defined if the GNU Portable Thread Library should be used])
829 else
830   AC_MSG_WARN([[
831 ***
832 *** To support concurrent access to the gpg-agent and the SCdaemon
833 *** we need the support of the GNU Portable Threads Library.
834 *** Download it from ftp://ftp.gnu.org/gnu/pth/
835 *** On a Debian GNU/Linux system you might want to try 
836 ***   apt-get install libpth-dev
837 ***]])
838 fi
839
840
841 AC_MSG_NOTICE([checking for networking options])
842
843 #
844 # Must check for network library requirements before doing link tests
845 # for ldap, for example. If ldap libs are static (or dynamic and without
846 # ELF runtime link paths), then link will fail and LDAP support won't
847 # be detected.
848 #
849 AC_CHECK_FUNC(gethostbyname, , AC_CHECK_LIB(nsl, gethostbyname,
850         [NETLIBS="-lnsl $NETLIBS"]))
851 AC_CHECK_FUNC(setsockopt, , AC_CHECK_LIB(socket, setsockopt,
852         [NETLIBS="-lsocket $NETLIBS"]))
853
854
855 #
856 # Check for ADNS.
857 #
858 _cppflags="${CPPFLAGS}"
859 _ldflags="${LDFLAGS}"
860 AC_ARG_WITH(adns,
861             AC_HELP_STRING([--with-adns=DIR],
862                            [look for the adns library in DIR]),
863             [if test -d "$withval"; then
864                CPPFLAGS="${CPPFLAGS} -I$withval/include"
865                LDFLAGS="${LDFLAGS} -L$withval/lib"
866              fi])
867 if test "$with_adns" != "no"; then
868   AC_CHECK_HEADERS(adns.h,
869                 AC_CHECK_LIB(adns, adns_init,
870                              [have_adns=yes],
871                              [CPPFLAGS=${_cppflags} LDFLAGS=${_ldflags}]),
872                 [CPPFLAGS=${_cppflags} LDFLAGS=${_ldflags}])
873 fi
874 if test "$have_adns" = "yes"; then
875   ADNSLIBS="-ladns" 
876 fi
877 AC_SUBST(ADNSLIBS)
878 # Newer adns versions feature a free function to be used under W32.
879 AC_CHECK_FUNCS(adns_free)
880
881
882
883 #
884 # Now try for the resolver functions so we can use DNS for SRV, PA and CERT.
885 #
886 if test x"$try_hkp" = xyes || test x"$try_http" = xyes ; then
887   AC_ARG_ENABLE(dns-srv,
888      AC_HELP_STRING([--disable-dns-srv],
889                     [disable the use of DNS SRV in HKP and HTTP]),
890                 use_dns_srv=$enableval,use_dns_srv=yes)
891 fi
892
893 AC_ARG_ENABLE(dns-pka,
894    AC_HELP_STRING([--disable-dns-pka],
895         [disable the use of PKA records in DNS]),
896    use_dns_pka=$enableval,use_dns_pka=yes)
897
898 AC_ARG_ENABLE(dns-cert,
899    AC_HELP_STRING([--disable-dns-cert],
900         [disable the use of CERT records in DNS]),
901    use_dns_cert=$enableval,use_dns_cert=yes)
902
903 if test x"$use_dns_pka" = xyes || test x"$use_dns_srv" = xyes \
904    || test x"$use_dns_cert" = xyes; then
905   _dns_save_libs=$LIBS
906   LIBS=""
907   # the double underscore thing is a glibc-ism?
908   AC_SEARCH_LIBS(res_query,resolv bind,,
909                  AC_SEARCH_LIBS(__res_query,resolv bind,,have_resolver=no))
910   AC_SEARCH_LIBS(dn_expand,resolv bind,,
911                  AC_SEARCH_LIBS(__dn_expand,resolv bind,,have_resolver=no))
912   AC_SEARCH_LIBS(dn_skipname,resolv bind,,
913                  AC_SEARCH_LIBS(__dn_skipname,resolv bind,,have_resolver=no))
914
915   if test x"$have_resolver" != xno ; then
916
917     # Make sure that the BIND 4 resolver interface is workable before
918     # enabling any code that calls it.  At some point I'll rewrite the
919     # code to use the BIND 8 resolver API.
920     # We might also want to use adns instead.  Problem with ADNS is that
921     # it does not support v6.
922
923     AC_MSG_CHECKING([whether the resolver is usable])
924     AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <sys/types.h>
925 #include <netinet/in.h>
926 #include <arpa/nameser.h>
927 #include <resolv.h>],
928 [[unsigned char answer[PACKETSZ];
929   res_query("foo.bar",C_IN,T_A,answer,PACKETSZ);
930   dn_skipname(0,0); 
931   dn_expand(0,0,0,0,0);
932 ]])],have_resolver=yes,have_resolver=no)
933     AC_MSG_RESULT($have_resolver)
934
935     # This is Apple-specific and somewhat bizarre as they changed the
936     # define in bind 8 for some reason.
937
938     if test x"$have_resolver" != xyes ; then
939        AC_MSG_CHECKING(
940              [whether I can make the resolver usable with BIND_8_COMPAT])
941        AC_LINK_IFELSE([AC_LANG_PROGRAM([#define BIND_8_COMPAT
942 #include <sys/types.h>
943 #include <netinet/in.h>
944 #include <arpa/nameser.h>
945 #include <resolv.h>],
946 [[unsigned char answer[PACKETSZ];
947   res_query("foo.bar",C_IN,T_A,answer,PACKETSZ);
948   dn_skipname(0,0); dn_expand(0,0,0,0,0);
949 ]])],[have_resolver=yes ; need_compat=yes])
950        AC_MSG_RESULT($have_resolver)
951     fi
952   fi
953
954   if test x"$have_resolver" = xyes ; then
955      DNSLIBS=$LIBS
956
957      if test x"$use_dns_srv" = xyes ; then
958         AC_DEFINE(USE_DNS_SRV,1,[define to use DNS SRV])
959      fi
960
961      if test x"$use_dns_pka" = xyes ; then
962         AC_DEFINE(USE_DNS_PKA,1,[define to use our experimental DNS PKA])
963      fi
964
965      if test x"$use_dns_cert" = xyes ; then
966         AC_DEFINE(USE_DNS_CERT,1,[define to use DNS CERT])
967      fi
968
969      if test x"$need_compat" = xyes ; then
970         AC_DEFINE(BIND_8_COMPAT,1,[an Apple OSXism])
971      fi
972   else
973      # If we have no resolver library but ADNS (e.g. under W32) enable the
974      # code parts which can be used with ADNS.
975      if test x"$have_adns" = xyes ; then
976         DNSLIBS="$ADNSLIBS"
977         AC_DEFINE(USE_ADNS,1,[Use ADNS as resolver library.])
978
979         if test x"$use_dns_srv" = xyes ; then
980            AC_DEFINE(USE_DNS_SRV,1)
981         fi
982
983         if test x"$use_dns_pka" = xyes ; then
984            AC_DEFINE(USE_DNS_PKA,1)
985         fi
986
987         if test x"$use_dns_cert" = xyes ; then
988            AC_DEFINE(USE_DNS_CERT,1,[define to use DNS CERT])
989         fi
990      else
991         use_dns_srv=no
992         use_dns_pka=no
993         use_dns_cert=no
994      fi
995   fi
996
997   LIBS=$_dns_save_libs
998 fi
999
1000 AC_SUBST(DNSLIBS)
1001
1002 AM_CONDITIONAL(USE_DNS_SRV, test x"$use_dns_srv" = xyes)
1003
1004
1005 #
1006 # Check for LDAP
1007 #
1008 if test "$try_ks_ldap" = yes || test "$build_dirmngr" = "yes" ; then
1009    GNUPG_CHECK_LDAP($NETLIBS)
1010 fi
1011
1012 #
1013 # Check for curl.  We fake the curl API if libcurl isn't installed.
1014 # We require 7.10 or later as we use curl_version_info().
1015 #
1016 LIBCURL_CHECK_CONFIG([yes],[7.10],,[fake_curl=yes])
1017 AM_CONDITIONAL(FAKE_CURL,test x"$fake_curl" = xyes)
1018
1019 # Generic, for us, means curl
1020
1021 if test x"$try_generic" = xyes ; then
1022    AC_SUBST(GPGKEYS_CURL,"gpg2keys_curl$EXEEXT")
1023 fi
1024
1025 #
1026 # Check for sendmail
1027 #
1028 # This isn't necessarily sendmail itself, but anything that gives a
1029 # sendmail-ish interface to the outside world.  That includes Exim,
1030 # Postfix, etc.  Basically, anything that can handle "sendmail -t".
1031 if test "$try_mailto" = yes ; then
1032   AC_ARG_WITH(mailprog,
1033       AC_HELP_STRING([--with-mailprog=NAME],
1034                      [use "NAME -t" for mail transport]),
1035              ,with_mailprog=yes)
1036
1037   if test x"$with_mailprog" = xyes ; then
1038     AC_PATH_PROG(SENDMAIL,sendmail,,$PATH:/usr/sbin:/usr/libexec:/usr/lib)
1039     if test "$ac_cv_path_SENDMAIL" ; then
1040       GPGKEYS_MAILTO="gpg2keys_mailto"
1041     fi
1042   elif test x"$with_mailprog" != xno ; then
1043     AC_MSG_CHECKING([for a mail transport program])
1044     AC_SUBST(SENDMAIL,$with_mailprog)
1045     AC_MSG_RESULT($with_mailprog)
1046     GPGKEYS_MAILTO="gpg2keys_mailto"
1047   fi
1048 fi
1049
1050 AC_SUBST(GPGKEYS_MAILTO)
1051
1052 #
1053 # Construct a printable name of the OS
1054 #
1055 case "${host}" in
1056     *-mingw32ce*)
1057         PRINTABLE_OS_NAME="W32CE"
1058         ;;
1059     *-mingw32*)
1060         PRINTABLE_OS_NAME="MingW32"
1061         ;;
1062     *-*-cygwin*)
1063         PRINTABLE_OS_NAME="Cygwin"
1064         ;;
1065     i?86-emx-os2 | i?86-*-os2*emx )
1066         PRINTABLE_OS_NAME="OS/2"
1067         ;;
1068     i?86-*-msdosdjgpp*)
1069         PRINTABLE_OS_NAME="MSDOS/DJGPP"
1070         try_dynload=no
1071         ;;
1072     *-linux*)
1073         PRINTABLE_OS_NAME="GNU/Linux"
1074         ;;
1075     *)
1076         PRINTABLE_OS_NAME=`uname -s || echo "Unknown"`
1077         ;;
1078 esac
1079 AC_DEFINE_UNQUOTED(PRINTABLE_OS_NAME, "$PRINTABLE_OS_NAME",
1080                    [A human readable text with the name of the OS])
1081
1082
1083 #
1084 # Checking for iconv
1085 #
1086 AM_ICONV
1087
1088
1089 #
1090 # Check for gettext
1091 #
1092 # This is "GNU gnupg" - The project-id script from gettext
1093 #                       needs this string
1094 #
1095 AC_MSG_NOTICE([checking for gettext])
1096 AM_PO_SUBDIRS
1097 AM_GNU_GETTEXT_VERSION([0.17])
1098 if test "$try_gettext" = yes; then
1099   AM_GNU_GETTEXT([external],[need-ngettext])
1100
1101   # gettext requires some extra checks.  These really should be part of
1102   # the basic AM_GNU_GETTEXT macro.  TODO: move other gettext-specific
1103   # function checks to here.
1104
1105   AC_CHECK_FUNCS(strchr)
1106 else
1107   USE_NLS=no
1108   USE_INCLUDED_LIBINTL=no
1109   BUILD_INCLUDED_LIBINTL=no
1110   POSUB=po
1111   AC_SUBST(USE_NLS)
1112   AC_SUBST(USE_INCLUDED_LIBINTL)
1113   AC_SUBST(BUILD_INCLUDED_LIBINTL)
1114   AC_SUBST(POSUB)
1115 fi
1116
1117 # We use HAVE_LANGINFO_CODESET in a couple of places.
1118 AM_LANGINFO_CODESET
1119
1120 # Checks required for our use locales
1121 gt_LC_MESSAGES
1122
1123
1124 #
1125 # SELinux support
1126 #
1127 if test "$selinux_support" = yes ; then
1128   AC_DEFINE(ENABLE_SELINUX_HACKS,1,[Define to enable SELinux support])
1129 fi
1130
1131
1132 #
1133 # Checks for header files.
1134 #
1135 AC_MSG_NOTICE([checking for header files])
1136 AC_HEADER_STDC
1137 AC_CHECK_HEADERS([string.h unistd.h langinfo.h termio.h locale.h getopt.h \
1138                   pty.h pwd.h inttypes.h signal.h])
1139 AC_HEADER_TIME
1140
1141
1142 #
1143 # Checks for typedefs, structures, and compiler characteristics.
1144 #
1145 AC_MSG_NOTICE([checking for system characteristics])
1146 AC_C_CONST
1147 AC_C_INLINE
1148 AC_C_VOLATILE
1149 AC_TYPE_SIZE_T
1150 AC_TYPE_MODE_T
1151 AC_TYPE_SIGNAL
1152 AC_DECL_SYS_SIGLIST
1153
1154 gl_HEADER_SYS_SOCKET
1155 gl_TYPE_SOCKLEN_T
1156
1157 AC_ARG_ENABLE(endian-check,
1158               AC_HELP_STRING([--disable-endian-check],
1159               [disable the endian check and trust the OS provided macros]),
1160               endiancheck=$enableval,endiancheck=yes)
1161
1162 if test x"$endiancheck" = xyes ; then
1163   GNUPG_CHECK_ENDIAN
1164 fi
1165
1166 # fixme: we should get rid of the byte type
1167 GNUPG_CHECK_TYPEDEF(byte, HAVE_BYTE_TYPEDEF)
1168 GNUPG_CHECK_TYPEDEF(ushort, HAVE_USHORT_TYPEDEF)
1169 GNUPG_CHECK_TYPEDEF(ulong, HAVE_ULONG_TYPEDEF)
1170 GNUPG_CHECK_TYPEDEF(u16, HAVE_U16_TYPEDEF)
1171 GNUPG_CHECK_TYPEDEF(u32, HAVE_U32_TYPEDEF)
1172
1173 AC_CHECK_SIZEOF(unsigned short)
1174 AC_CHECK_SIZEOF(unsigned int)
1175 AC_CHECK_SIZEOF(unsigned long)
1176 AC_CHECK_SIZEOF(unsigned long long)
1177 AC_HEADER_TIME
1178 AC_CHECK_SIZEOF(time_t,,[[
1179 #include <stdio.h>
1180 #if TIME_WITH_SYS_TIME
1181 # include <sys/time.h>
1182 # include <time.h>
1183 #else
1184 # if HAVE_SYS_TIME_H
1185 #  include <sys/time.h>
1186 # else
1187 #  include <time.h>
1188 # endif
1189 #endif
1190 ]])
1191 GNUPG_TIME_T_UNSIGNED
1192
1193
1194 # Ensure that we have UINT64_C before we bother to check for uint64_t
1195 # Fixme: really needed in gnupg?  I think it is only useful in libcgrypt.
1196 AC_CACHE_CHECK([for UINT64_C],[gnupg_cv_uint64_c_works],
1197    AC_COMPILE_IFELSE(AC_LANG_PROGRAM([#include <inttypes.h>
1198        uint64_t foo=UINT64_C(42);]),
1199      gnupg_cv_uint64_c_works=yes,gnupg_cv_uint64_c_works=no))
1200 if test "$gnupg_cv_uint64_c_works" = "yes" ; then
1201    AC_CHECK_SIZEOF(uint64_t)
1202 fi
1203
1204 if test "$ac_cv_sizeof_unsigned_short" = "0" \
1205    || test "$ac_cv_sizeof_unsigned_int" = "0" \
1206    || test "$ac_cv_sizeof_unsigned_long" = "0"; then
1207     AC_MSG_WARN([Hmmm, something is wrong with the sizes - using defaults]);
1208 fi
1209
1210
1211 #
1212 # Checks for library functions.
1213 #
1214 AC_MSG_NOTICE([checking for library functions])
1215 AC_CHECK_DECLS(getpagesize)
1216 AC_FUNC_FSEEKO
1217 AC_FUNC_VPRINTF
1218 AC_FUNC_FORK
1219 AC_CHECK_FUNCS([strerror strlwr tcgetattr mmap canonicalize_file_name])
1220 AC_CHECK_FUNCS([strcasecmp strncasecmp ctermid times gmtime_r strtoull])
1221 AC_CHECK_FUNCS([unsetenv fcntl ftruncate canonicalize_file_name])
1222 AC_CHECK_FUNCS([gettimeofday getrusage getrlimit setrlimit clock_gettime])
1223 AC_CHECK_FUNCS([atexit raise getpagesize strftime nl_langinfo setlocale])
1224 AC_CHECK_FUNCS([waitpid wait4 sigaction sigprocmask pipe getaddrinfo])
1225 AC_CHECK_FUNCS([ttyname rand ftello fsync stat lstat])
1226
1227 AC_CHECK_TYPES([struct sigaction, sigset_t],,,[#include <signal.h>])
1228
1229 # Dirmngr requires mmap on Unix systems.
1230 if test $ac_cv_func_mmap != yes -a $mmap_needed = yes; then
1231   AC_MSG_ERROR([[Sorry, the current implemenation requires mmap.]])
1232 fi
1233
1234 #
1235 # These are needed by the jnlib parts in common.
1236 # Note:  We already checked pwd.h.
1237 AC_CHECK_HEADERS([signal.h])
1238 AC_CHECK_FUNCS([memicmp stpcpy strsep strlwr strtoul memmove stricmp strtol \
1239                 memrchr isascii timegm getrusage setrlimit stat setlocale   \
1240                 flockfile funlockfile fopencookie funopen getpwnam getpwuid \
1241                 getenv inet_pton])
1242 # end jnlib checks.
1243
1244
1245
1246 #
1247 # gnulib checks
1248 #
1249 gl_SOURCE_BASE([gl])
1250 gl_M4_BASE([gl/m4])
1251 gl_MODULES([setenv mkdtemp xsize strpbrk])
1252 gl_INIT
1253
1254
1255 #
1256 # W32 specific test
1257 #
1258 GNUPG_FUNC_MKDIR_TAKES_ONE_ARG
1259
1260 #
1261 # Sanity check regex.  Tests adapted from mutt.
1262 #
1263 AC_MSG_CHECKING([whether regular expression support is requested])
1264 AC_ARG_ENABLE(regex,
1265   AC_HELP_STRING([--disable-regex],
1266     [do not handle regular expressions in trust signatures]),
1267   use_regex=$enableval, use_regex=yes)
1268 AC_MSG_RESULT($use_regex)
1269
1270 if test "$use_regex" = yes ; then
1271   _cppflags="${CPPFLAGS}"
1272   _ldflags="${LDFLAGS}"
1273   AC_ARG_WITH(regex,
1274      AC_HELP_STRING([--with-regex=DIR],[look for regex in DIR]),
1275       [
1276       if test -d "$withval" ; then
1277         CPPFLAGS="${CPPFLAGS} -I$withval/include"
1278         LDFLAGS="${LDFLAGS} -L$withval/lib"
1279       fi
1280       ],withval="")     
1281
1282   # Does the system have regex functions at all?
1283   AC_SEARCH_LIBS([regcomp], [regex])
1284   AC_CHECK_FUNC(regcomp, gnupg_cv_have_regex=yes, gnupg_cv_have_regex=no)
1285
1286   if test $gnupg_cv_have_regex = no; then
1287     use_regex=no
1288   else
1289     if test x"$cross_compiling" = xyes; then
1290       AC_MSG_WARN([cross compiling; assuming regexp libray is not broken])
1291     else
1292       AC_CACHE_CHECK([whether your system's regexp library is broken],
1293        [gnupg_cv_regex_broken],
1294        AC_TRY_RUN([
1295 #include <unistd.h>
1296 #include <regex.h>
1297 main() { regex_t blah ; regmatch_t p; p.rm_eo = p.rm_eo; return regcomp(&blah, "foo.*bar", REG_NOSUB) || regexec (&blah, "foobar", 0, NULL, 0); }],
1298        gnupg_cv_regex_broken=no, gnupg_cv_regex_broken=yes, gnupg_cv_regex_broken=yes))
1299
1300       if test $gnupg_cv_regex_broken = yes; then
1301         AC_MSG_WARN([your regex is broken - disabling regex use])
1302         use_regex=no
1303       fi
1304     fi
1305   fi
1306   CPPFLAGS="${_cppflags}"
1307   LDFLAGS="${_ldflags}"
1308 fi
1309
1310 if test "$use_regex" != yes ; then
1311   AC_DEFINE(DISABLE_REGEX,1, [Define to disable regular expression support])
1312 fi
1313 AM_CONDITIONAL(DISABLE_REGEX, test x"$use_regex" != xyes)
1314
1315
1316
1317 #
1318 # Do we have zlib? Must do it here because Solaris failed
1319 # when compiling a conftest (due to the "-lz" from LIBS).
1320 # Note that we combine zlib and bzlib2 in ZLIBS.
1321 #
1322 if test "$use_zip" = yes ; then
1323   _cppflags="${CPPFLAGS}"
1324   _ldflags="${LDFLAGS}"
1325   AC_ARG_WITH(zlib,
1326     [  --with-zlib=DIR         use libz in DIR],[
1327       if test -d "$withval"; then
1328         CPPFLAGS="${CPPFLAGS} -I$withval/include"
1329         LDFLAGS="${LDFLAGS} -L$withval/lib"
1330       fi
1331     ])
1332   
1333   AC_CHECK_HEADER(zlib.h,
1334         AC_CHECK_LIB(z, deflateInit2_,
1335          ZLIBS="-lz",
1336          CPPFLAGS=${_cppflags} LDFLAGS=${_ldflags}),
1337          CPPFLAGS=${_cppflags} LDFLAGS=${_ldflags})
1338          
1339   AC_DEFINE(HAVE_ZIP,1, [Defined if ZIP and ZLIB are supported])
1340 fi
1341
1342
1343 #
1344 # Check whether we can support bzip2
1345
1346 if test "$use_bzip2" = yes ; then
1347   _cppflags="${CPPFLAGS}"
1348   _ldflags="${LDFLAGS}"
1349   AC_ARG_WITH(bzip2,
1350      AC_HELP_STRING([--with-bzip2=DIR],[look for bzip2 in DIR]),
1351       [
1352       if test -d "$withval" ; then
1353         CPPFLAGS="${CPPFLAGS} -I$withval/include"
1354         LDFLAGS="${LDFLAGS} -L$withval/lib"
1355       fi
1356       ],withval="")
1357
1358   # Checking alongside stdio.h as an early version of bzip2 (1.0)
1359   # required stdio.h to be included before bzlib.h, and Solaris 9 is 
1360   # woefully out of date.
1361   if test "$withval" != no ; then
1362      AC_CHECK_HEADER(bzlib.h,
1363         AC_CHECK_LIB(bz2,BZ2_bzCompressInit,
1364           [
1365           have_bz2=yes
1366           ZLIBS="$ZLIBS -lbz2"
1367           AC_DEFINE(HAVE_BZIP2,1,
1368                   [Defined if the bz2 compression library is available])
1369           ],
1370           CPPFLAGS=${_cppflags} LDFLAGS=${_ldflags}),
1371           CPPFLAGS=${_cppflags} LDFLAGS=${_ldflags},[#include <stdio.h>])
1372   fi
1373 fi
1374 AM_CONDITIONAL(ENABLE_BZIP2_SUPPORT,test x"$have_bz2" = "xyes")
1375 AC_SUBST(ZLIBS)
1376
1377
1378 # Check for readline support
1379 GNUPG_CHECK_READLINE
1380
1381 #
1382 # Allow users to append something to the version string without
1383 # flagging it as development version.  The user version parts is
1384 # considered everything after a dash. 
1385 #
1386 if test "$development_version" != yes; then
1387   changequote(,)dnl
1388   tmp_pat='[a-zA-Z]'
1389   changequote([,])dnl
1390   if echo "$VERSION" | sed 's/-.*//' | grep "$tmp_pat" >/dev/null ; then
1391     development_version=yes
1392   fi
1393 fi
1394 if test "$development_version" = yes; then
1395     AC_DEFINE(IS_DEVELOPMENT_VERSION,1,
1396             [Defined if this is not a regular release])
1397 fi
1398
1399 AM_CONDITIONAL(CROSS_COMPILING, test x$cross_compiling = xyes)
1400
1401 GNUPG_CHECK_GNUMAKE
1402
1403 # Add some extra libs here so that previous tests don't fail for
1404 # mysterious reasons - the final link step should bail out.
1405 # W32SOCKLIBS is also defined so that if can be used for tools not
1406 # requiring any network stuff but linking to code in libcommon which
1407 # tracks in winsock stuff (e.g. init_common_subsystems).
1408 if test "$have_w32_system" = yes; then
1409    if test "$have_w32ce_system" = yes; then
1410      W32SOCKLIBS="-lws2"
1411    else
1412      W32SOCKLIBS="-lws2_32"
1413    fi
1414    NETLIBS="${NETLIBS} ${W32SOCKLIBS}"
1415 fi
1416
1417 AC_SUBST(NETLIBS)
1418 AC_SUBST(W32SOCKLIBS)
1419
1420 #
1421 # Setup gcc specific options
1422 #
1423 AC_MSG_NOTICE([checking for cc features])
1424 if test "$GCC" = yes; then
1425     # Note that it is okay to use CFLAGS here because this are just
1426     # warning options and the user should have a chance of overriding
1427     # them.
1428     if test "$USE_MAINTAINER_MODE" = "yes"; then
1429         CFLAGS="$CFLAGS -O3 -Wall -Wcast-align -Wshadow -Wstrict-prototypes"
1430         CFLAGS="$CFLAGS -Wformat -Wno-format-y2k -Wformat-security"
1431         AC_MSG_CHECKING([if gcc supports -Wno-missing-field-initializers])
1432         _gcc_cflags_save=$CFLAGS
1433         CFLAGS="-Wno-missing-field-initializers"
1434         AC_COMPILE_IFELSE(AC_LANG_PROGRAM([]),_gcc_wopt=yes,_gcc_wopt=no)
1435         AC_MSG_RESULT($_gcc_wopt)
1436         CFLAGS=$_gcc_cflags_save;
1437         if test x"$_gcc_wopt" = xyes ; then
1438           CFLAGS="$CFLAGS -W -Wno-sign-compare -Wno-missing-field-initializers"
1439         fi
1440         AC_MSG_CHECKING([if gcc supports -Wdeclaration-after-statement])
1441         _gcc_cflags_save=$CFLAGS
1442         CFLAGS="-Wdeclaration-after-statement"
1443         AC_COMPILE_IFELSE(AC_LANG_PROGRAM([]),_gcc_wopt=yes,_gcc_wopt=no)
1444         AC_MSG_RESULT($_gcc_wopt)
1445         CFLAGS=$_gcc_cflags_save;
1446         if test x"$_gcc_wopt" = xyes ; then
1447           CFLAGS="$CFLAGS -Wdeclaration-after-statement"
1448         fi
1449     else
1450         CFLAGS="$CFLAGS -Wall"
1451     fi
1452
1453     AC_MSG_CHECKING([if gcc supports -Wno-pointer-sign])
1454     _gcc_cflags_save=$CFLAGS
1455     CFLAGS="-Wno-pointer-sign"
1456     AC_COMPILE_IFELSE(AC_LANG_PROGRAM([]),_gcc_psign=yes,_gcc_psign=no)
1457     AC_MSG_RESULT($_gcc_psign)
1458     CFLAGS=$_gcc_cflags_save;
1459     if test x"$_gcc_psign" = xyes ; then
1460        CFLAGS="$CFLAGS -Wno-pointer-sign"
1461     fi
1462
1463     AC_MSG_CHECKING([if gcc supports -Wpointer-arith])
1464     _gcc_cflags_save=$CFLAGS
1465     CFLAGS="-Wpointer-arith"
1466     AC_COMPILE_IFELSE(AC_LANG_PROGRAM([]),_gcc_psign=yes,_gcc_psign=no)
1467     AC_MSG_RESULT($_gcc_psign)
1468     CFLAGS=$_gcc_cflags_save;
1469     if test x"$_gcc_psign" = xyes ; then
1470        CFLAGS="$CFLAGS -Wpointer-arith"
1471     fi
1472 fi
1473
1474
1475 #
1476 # This is handy for debugging so the compiler doesn't rearrange
1477 # things and eliminate variables.
1478 #
1479 AC_ARG_ENABLE(optimization,
1480    AC_HELP_STRING([--disable-optimization],
1481                   [disable compiler optimization]),
1482                   [if test $enableval = no ; then
1483                       CFLAGS=`echo $CFLAGS | sed s/-O[[1-9]]\ /-O0\ /g`
1484                    fi])
1485
1486 #
1487 # Prepare building of estream
1488 #
1489 estream_INIT
1490
1491
1492 #
1493 # Decide what to build
1494 #
1495 if test "$have_adns" = "yes"; then
1496   AC_SUBST(GPGKEYS_KDNS, "gpg2keys_kdns$EXEEXT")
1497 fi
1498
1499
1500 missing_pth=no
1501 if test $have_ksba = no; then
1502   build_gpgsm=no
1503   build_scdaemon=no
1504 fi
1505
1506 build_agent_threaded=""
1507 if test "$build_agent" = "yes"; then
1508   if test $have_pth = no; then
1509      build_agent_threaded="(not multi-threaded)"
1510      missing_pth=yes
1511   fi
1512 fi
1513
1514 build_scdaemon_extra=""
1515 if test "$build_scdaemon" = "yes"; then
1516   tmp=""
1517   if test $have_pth = no; then
1518      build_scdaemon_extra="not multi-threaded"
1519      tmp=", "
1520      missing_pth=yes
1521   fi
1522   if test $have_libusb = no; then
1523      build_scdaemon_extra="${tmp}without internal CCID driver"
1524      tmp=", "
1525   fi
1526   if test -n "$build_scdaemon_extra"; then
1527      build_scdaemon_extra="(${build_scdaemon_extra})"
1528   fi
1529 fi
1530
1531
1532 if test "$build_agent_only" = "yes" ; then
1533   build_gpg=no
1534   build_gpgsm=no
1535   build_scdaemon=no
1536   build_tools=no
1537   build_doc=no
1538 fi
1539
1540 #
1541 # Set variables for use by th automake makefile.
1542 #
1543 AM_CONDITIONAL(BUILD_GPG,         test "$build_gpg" = "yes")
1544 AM_CONDITIONAL(BUILD_GPGSM,       test "$build_gpgsm" = "yes")
1545 AM_CONDITIONAL(BUILD_AGENT,       test "$build_agent" = "yes")
1546 AM_CONDITIONAL(BUILD_SCDAEMON,    test "$build_scdaemon" = "yes")
1547 AM_CONDITIONAL(BUILD_G13,         test "$build_g13" = "yes")
1548 AM_CONDITIONAL(BUILD_DIRMNGR,     test "$build_dirmngr" = "yes")
1549 AM_CONDITIONAL(BUILD_TOOLS,       test "$build_tools" = "yes")
1550 AM_CONDITIONAL(BUILD_DOC,         test "$build_doc" = "yes")
1551 AM_CONDITIONAL(BUILD_SYMCRYPTRUN, test "$build_symcryptrun" = "yes")
1552 AM_CONDITIONAL(BUILD_GPGTAR,      test "$build_gpgtar" = "yes")
1553
1554 AM_CONDITIONAL(RUN_GPG_TESTS,
1555                test x$cross_compiling = xno -a "$build_gpg" = yes )
1556
1557
1558 # Set some defines for use gpgconf.
1559 #
1560 if test "$build_gpg" = yes ; then
1561     AC_DEFINE(BUILD_WITH_GPG,1,[Defined if GPG is to be build])
1562 fi
1563 if test "$build_gpgsm" = yes ; then
1564     AC_DEFINE(BUILD_WITH_GPGSM,1,[Defined if GPGSM is to be build])
1565 fi
1566 if test "$build_agent" = yes ; then
1567     AC_DEFINE(BUILD_WITH_AGENT,1,[Defined if GPG-AGENT is to be build])
1568 fi
1569 if test "$build_scdaemon" = yes ; then
1570     AC_DEFINE(BUILD_WITH_SCDAEMON,1,[Defined if SCDAEMON is to be build])
1571 fi
1572 if test "$build_dirmngr" = yes ; then
1573     AC_DEFINE(BUILD_WITH_DIRMNGR,1,[Defined if SCDAEMON is to be build])
1574 fi
1575 if test "$build_g13" = yes ; then
1576     AC_DEFINE(BUILD_WITH_G13,1,[Defined if G13 is to be build])
1577 fi
1578
1579
1580
1581 #
1582 # Print errors here so that they are visible all
1583 # together and the user can acquire them all together.
1584 #
1585 die=no
1586 if test "$have_gpg_error" = "no"; then
1587    die=yes
1588    AC_MSG_NOTICE([[
1589 ***  
1590 *** You need libgpg-error to build this program.
1591 **  This library is for example available at
1592 ***   ftp://ftp.gnupg.org/gcrypt/libgpg-error
1593 *** (at least version $NEED_GPG_ERROR_VERSION is required.)
1594 ***]])
1595 fi
1596 if test "$have_libgcrypt" = "no"; then
1597    die=yes
1598    AC_MSG_NOTICE([[
1599 ***  
1600 *** You need libgcrypt to build this program.
1601 **  This library is for example available at
1602 ***   ftp://ftp.gnupg.org/gcrypt/libgcrypt/
1603 *** (at least version $NEED_LIBGCRYPT_VERSION using API $NEED_LIBGCRYPT_API is required.)
1604 ***]])
1605 fi
1606 if test "$have_libassuan" = "no"; then
1607    die=yes
1608    AC_MSG_NOTICE([[
1609 ***
1610 *** You need libassuan to build this program.
1611 *** This library is for example available at
1612 ***   ftp://ftp.gnupg.org/gcrypt/libassuan/
1613 *** (at least version $NEED_LIBASSUAN_VERSION (API $NEED_LIBASSUAN_API) is required).
1614 ***]])
1615 fi
1616 if test "$have_ksba" = "no"; then
1617     AC_MSG_NOTICE([[
1618 ***
1619 *** You need libksba to build this program.
1620 *** This library is for example available at
1621 ***   ftp://ftp.gnupg.org/gcrypt/libksba/
1622 *** (at least version $NEED_KSBA_VERSION using API $NEED_KSBA_API is required).
1623 ***]])
1624 fi
1625 if test "$gnupg_have_ldap" = "no"; then
1626     die=yes
1627     AC_MSG_NOTICE([[
1628 ***
1629 *** You need a LDAP library to build this program.
1630 *** Check out 
1631 ***    http://www.openldap.org 
1632 *** for a suitable implementation.
1633 ***]])
1634    if test "$have_w32ce_system" = yes; then
1635     AC_MSG_NOTICE([[
1636 *** Note that CeGCC might be broken, a package fixing this is:
1637 ***    http://files.kolab.org/local/windows-ce/ 
1638 ***                           source/wldap32_0.1-mingw32ce.orig.tar.gz
1639 ***                           binary/wldap32-ce-arm-dev_0.1-1_all.deb
1640 ***]])
1641    fi
1642 fi
1643 if test "$missing_pth" = "yes"; then
1644     AC_MSG_NOTICE([[
1645 ***
1646 *** It is now required to build with support for the
1647 *** GNU Portable Threads Library (Pth). Please install this
1648 *** library first.  The library is for example available at
1649 ***   ftp://ftp.gnu.org/gnu/pth/
1650 *** On a Debian GNU/Linux system you can install it using 
1651 ***   apt-get install libpth-dev
1652 *** To build GnuPG for Windows you need to use the W32PTH
1653 *** package; available at:
1654 ***   ftp://ftp.g10code.com/g10code/w32pth/
1655 ***]])
1656    die=yes
1657 fi
1658
1659 if test "$die" = "yes"; then
1660     AC_MSG_ERROR([[
1661 ***
1662 *** Required libraries not found. Please consult the above messages
1663 *** and install them before running configure again.
1664 ***]])
1665 fi
1666
1667
1668
1669 AC_CONFIG_FILES([ m4/Makefile 
1670 Makefile
1671 po/Makefile.in
1672 gl/Makefile
1673 include/Makefile
1674 common/Makefile
1675 kbx/Makefile
1676 g10/Makefile
1677 sm/Makefile
1678 agent/Makefile
1679 scd/Makefile
1680 g13/Makefile
1681 dirmngr/Makefile
1682 keyserver/Makefile
1683 keyserver/gpg2keys_mailto
1684 keyserver/gpg2keys_test
1685 tools/gpg-zip
1686 tools/Makefile
1687 doc/Makefile
1688 tests/Makefile
1689 tests/openpgp/Makefile
1690 tests/pkits/Makefile
1691 ])
1692 AC_OUTPUT
1693
1694
1695 echo "
1696         GnuPG v${VERSION} has been configured as follows:
1697         
1698         Platform:  $PRINTABLE_OS_NAME ($host)
1699
1700         OpenPGP:   $build_gpg
1701         S/MIME:    $build_gpgsm
1702         Agent:     $build_agent $build_agent_threaded
1703         Smartcard: $build_scdaemon $build_scdaemon_extra
1704         G13:       $build_g13
1705         Dirmngr:   $build_dirmngr
1706         Gpgtar:    $build_gpgtar
1707
1708         Protect tool:      $show_gnupg_protect_tool_pgm
1709         LDAP wrapper:      $show_gnupg_dirmngr_ldap_pgm
1710         Default agent:     $show_gnupg_agent_pgm
1711         Default pinentry:  $show_gnupg_pinentry_pgm
1712         Default scdaemon:  $show_gnupg_scdaemon_pgm
1713         Default dirmngr:   $show_gnupg_dirmngr_pgm
1714
1715         Use standard socket: $use_standard_socket
1716         Dirmngr auto start:  $dirmngr_auto_start
1717 "
1718 if test x"$use_regex" != xyes ; then
1719 echo "
1720         Warning: No regular expression support available.
1721                  OpenPGP trust signatures won't work.
1722                  gpg-check-pattern will not be build.
1723 "
1724 fi