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