See ChangeLog: Wed Aug 4 10:34:46 CEST 1999 Werner Koch
[gnupg.git] / configure.in
1 dnl
2 dnl Configure template for GNUPG
3 dnl
4 dnl (Process this file with autoconf to produce a configure script.)
5 AC_REVISION($Revision$)dnl
6
7 dnl Must reset CDPATH so that bash's cd does not print to stdout
8 CDPATH=
9
10 AC_PREREQ(2.13)
11 AC_INIT(g10/g10.c)
12 AC_CONFIG_AUX_DIR(scripts)
13 AM_CONFIG_HEADER(config.h)
14
15
16 VERSION=`cat $srcdir/VERSION`
17 PACKAGE=gnupg
18 ALL_LINGUAS="de es_ES fr it pl pt_BR ru"
19 static_modules="sha1 md5 rmd160"
20 AC_SUBST(VERSION)
21 AC_SUBST(PACKAGE)
22 AC_DEFINE_UNQUOTED(VERSION, "$VERSION")
23 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
24
25 MODULES_IN_CIPHER=`awk '/# MODULES: / { for(i=3;i<=NF;i++) print $i}' \
26                                                 $srcdir/cipher/Makefile.am`
27
28 dnl
29 dnl  Check for random module options
30 dnl
31 dnl  Fixme: get the list of available modules from MODULES_IN_CIPHER
32 dnl         and check against this list
33
34 AC_MSG_CHECKING([which static random module to use])
35 AC_ARG_ENABLE(static-rnd,
36     [  --enable-static-rnd=[egd|unix|linux|none]  ],
37 [use_static_rnd=$enableval], [use_static_rnd=default] )
38
39 if test "$use_static_rnd" = no; then
40     use_static_rnd=default
41 fi
42
43 case "$use_static_rnd" in
44     egd | linux | unix | none | default )
45       AC_MSG_RESULT($use_static_rnd)
46       ;;
47     * )
48       AC_MSG_RESULT(invalid argument)
49       AC_MSG_ERROR(there is no random module rnd$use_static_rnd)
50       ;;
51 esac
52
53
54
55 dnl
56 dnl See whether the user wants to disable checking for /dev/random
57
58 AC_MSG_CHECKING([whether use of /dev/random is requested])
59 AC_ARG_ENABLE(dev-random,
60 [  --disable-dev-random    disable the use of dev random],
61     try_dev_random=$enableval, try_dev_random=yes)
62 AC_MSG_RESULT($try_dev_random)
63
64
65 dnl
66 dnl  Check other options
67 dnl
68
69 AC_MSG_CHECKING([whether use of extensions is requested])
70 AC_ARG_ENABLE(dynload,
71 [  --disable-dynload       disable use of extensions],
72     try_dynload=$enableval, try_dynload=yes)
73 AC_MSG_RESULT($try_dynload)
74
75 AC_MSG_CHECKING([whether assembler modules are requested])
76 AC_ARG_ENABLE(asm,
77 [  --disable-asm           do not use assembler modules],
78      try_asm_modules=$enableval, try_asm_modules=yes)
79 AC_MSG_RESULT($try_asm_modules)
80
81 AC_MSG_CHECKING([whether memory debugging is requested])
82 AC_ARG_ENABLE(m-debug,
83 [  --enable-m-debug        enable debugging of memory allocation],
84 use_m_debug=$enableval, use_m_debug=no)
85 AC_MSG_RESULT($use_m_debug)
86 if test "$use_m_debug" = yes; then
87     AC_DEFINE(M_DEBUG)
88     use_m_guard=yes
89 else
90     AC_MSG_CHECKING([whether memory guard is requested])
91     AC_ARG_ENABLE(m-guard,
92     [  --enable-m-guard        enable memory guard facility],
93     use_m_guard=$enableval, use_m_guard=no)
94     AC_MSG_RESULT($use_m_guard)
95 fi
96 if test "$use_m_guard" = yes ; then
97     AC_DEFINE(M_GUARD)
98 fi
99
100
101 AC_MSG_CHECKING([whether included zlib is requested])
102 AC_ARG_WITH(included-zlib,
103     [  --with-included-zlib    use the zlib code included here],
104 [g10_force_zlib=yes], [g10_force_zlib=no] )
105 AC_MSG_RESULT($g10_force_zlib)
106
107 dnl
108 dnl Check wether we want to compile libgcrypt
109 dnl
110 AC_MSG_CHECKING([whether compilation of libgcrypt is requested])
111 AC_ARG_ENABLE(libgcrypt,
112     [  --enable-libgcrypt      compile the libgcrypt [default=no]],
113 [compile_libgcrypt="$enableval"],[compile_libgcrypt=no])
114 AC_MSG_RESULT($compile_libgcrypt)
115 if test x$compile_libgcrypt = xyes ; then
116     if test -f $srcdir/gcrypt/gcrypt.h; then
117         :
118     else
119         compile_libgcrypt=no
120         AC_MSG_WARN([[
121 ***
122 *** LIBGCRYPT is not yet ready for public testing.
123 *** Maybe you have more luck with the next release of GnuPG
124 *** Watch the gnupg-announce mailing list or the webpage.
125 ***]])
126     fi
127 fi
128 AM_CONDITIONAL(COMPILE_LIBGCRYPT, test x$compile_libgcrypt = xyes)
129
130
131 dnl
132 dnl Check whether we want to use Linux capabilities
133 dnl
134 AC_MSG_CHECKING([whether use of capabilities is requested])
135 AC_ARG_WITH(capabilities,
136     [  --with-capabilities     use linux capabilities [default=no]],
137 [use_capabilities="$withval"],[use_capabilities=no])
138 AC_MSG_RESULT($use_capabilities)
139
140
141 AM_MAINTAINER_MODE
142
143 dnl Checks for programs.
144
145 AC_CANONICAL_SYSTEM
146 AC_ARG_PROGRAM
147 AC_PROG_MAKE_SET
148 AM_SANITY_CHECK
149 missing_dir=`cd $ac_aux_dir && pwd`
150 AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir)
151 AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
152 AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir)
153 AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
154 dnl AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
155 AC_PROG_CC
156 AC_PROG_CPP
157 AC_ISC_POSIX
158 AC_PROG_INSTALL
159 AC_PROG_AWK
160 AC_CHECK_PROG(DOCBOOK_TO_MAN, docbook-to-man, yes, no)
161 AM_CONDITIONAL(HAVE_DOCBOOK_TO_MAN, test "$ac_cv_prog_DOCBOOK_TO_MAN" = yes)
162
163
164 dnl
165 dnl Build shared libraries only when compilation of libgcrypt
166 dnl has been requested
167 dnl
168 AM_DISABLE_SHARED
169 enable_shared="$compile_libgcrypt"
170 AM_PROG_LIBTOOL
171
172
173 MPI_OPT_FLAGS=""
174 if test "$GCC" = yes; then
175     CFLAGS="$CFLAGS -Wall -Wcast-align -Wshadow -Wstrict-prototypes"
176 fi
177
178
179 try_gettext=yes
180 try_gdbm=yes
181 case "${target}" in
182     i386--mingw32)
183         # special stuff for Windoze NT
184         cross_compiling=yes
185         CC="i386--mingw32-gcc"
186         CPP="i386--mingw32-gcc -E"
187         RANLIB="i386--mingw32-ranlib"
188         ac_cv_have_dev_random=no
189         AC_DEFINE(USE_ONLY_8DOT3)
190         AC_DEFINE(HAVE_DRIVE_LETTERS)
191         AC_DEFINE(HAVE_DOSISH_SYSTEM)
192         try_gettext="no"
193         try_gdbm="no"
194         ;;
195     i386-emx-os2 | i[3456]86-pc-os2*emx )
196         # OS/2 with the EMX environment
197         ac_cv_have_dev_random=no
198         AC_DEFINE(HAVE_DRIVE_LETTERS)
199         AC_DEFINE(HAVE_DOSISH_SYSTEM)
200         try_gettext="no"
201         try_gdbm="no"
202         ;;
203
204     *-*-hpux*)
205         if test -z "$GCC" ; then
206             CFLAGS="$CFLAGS -Ae -D_HPUX_SOURCE"
207         fi
208         ;;
209     *-dec-osf4*)
210         if test -z "$GCC" ; then
211             # Suppress all warnings
212             # to get rid of the unsigned/signed char mismatch warnings.
213             CFLAGS="$CFLAGS -w"
214         fi
215         ;;
216     m68k-atari-mint)
217         ;;
218     *)
219        ;;
220 esac
221
222 AC_SUBST(MPI_OPT_FLAGS)
223 GNUPG_SYS_SYMBOL_UNDERSCORE
224 GNUPG_CHECK_PIC
225 GNUPG_CHECK_RDYNAMIC
226 if test "$NO_PIC" = yes; then
227     try_dynload=no
228 fi
229
230
231 case "${target}" in
232     i386--mingw32)
233         PRINTABLE_OS_NAME="MingW32"
234         ;;
235     i386-emx-os2 | i[3456]86-pc-os2*emx )
236         PRINTABLE_OS_NAME="OS/2"
237         ;;
238     *-linux*)
239         PRINTABLE_OS_NAME="GNU/Linux"
240         ;;
241     *)
242         PRINTABLE_OS_NAME=`uname -s || echo "Unknown"`
243         ;;
244 esac
245 AC_DEFINE_UNQUOTED(PRINTABLE_OS_NAME, "$PRINTABLE_OS_NAME")
246
247 dnl  Fixme: Are these the best flags for OpenBSD????
248 dnl (I have removed the -lc from * ...CFLAGS for test purposes.)
249 case "${target}" in
250     *-openbsd*)
251         NAME_OF_DEV_RANDOM="/dev/srandom"
252         NAME_OF_DEV_URANDOM="/dev/urandom"
253         DYNLINK_MOD_CFLAGS="-shared -rdynamic -fpic -Wl,-Bshareable -Wl,-x"
254         ;;
255     *)
256         NAME_OF_DEV_RANDOM="/dev/random"
257         NAME_OF_DEV_URANDOM="/dev/urandom"
258         DYNLINK_MOD_CFLAGS="-shared $CFLAGS_PIC"
259         ;;
260 esac
261 AC_DEFINE_UNQUOTED(NAME_OF_DEV_RANDOM, "$NAME_OF_DEV_RANDOM")
262 AC_DEFINE_UNQUOTED(NAME_OF_DEV_URANDOM, "$NAME_OF_DEV_URANDOM")
263 AC_SUBST(MPI_OPT_FLAGS)
264
265
266 dnl Checks for libraries.
267
268 if test "$try_gettext" = yes; then
269 AM_GNU_GETTEXT
270 else
271 USE_NLS=no
272 USE_INCLUDED_LIBINTL=no
273 AC_SUBST(USE_NLS)
274 AC_SUBST(USE_INCLUDED_LIBINTL)
275 fi
276
277 dnl
278 dnl There are lot of misconfigured systems.  We include
279 dnl gdbm support only if the lib and the header is installed.
280 dnl
281 if test "$try_gdbm" = yes; then
282 AC_CHECK_HEADERS(gdbm.h)
283 if test "$ac_cv_header_gdbm_h" = yes ; then
284   AC_CHECK_LIB(gdbm,gdbm_firstkey)
285 fi
286 fi
287
288
289 dnl Solaris needs -lsocket and -lnsl. Unisys system includes
290 dnl gethostbyname in libsocket but needs libnsl for socket.
291 AC_CHECK_LIB(nsl, gethostbyname)
292 AC_CHECK_LIB(socket, socket, ac_need_libsocket=1, ac_try_nsl=1)
293 if test x$ac_need_libsocket = x1; then
294     LIBS="$LIBS -lsocket"
295 fi
296 if test x$ac_try_nsl = x1; then
297     AC_CHECK_LIB(nsl, gethostbyname, ac_need_libnsl=1)
298     if test x$ac_need_libnsl = x1
299     then
300         LIBS="$LIBS -lnsl"
301     fi
302 fi
303
304
305 if test "$try_dynload" = yes ; then
306   AC_CHECK_LIB(dl,dlopen)
307   if test "$ac_cv_lib_dl_dlopen" = "yes"; then
308     AC_DEFINE(USE_DYNAMIC_LINKING)
309     AC_DEFINE(HAVE_DL_DLOPEN)
310     DYNLINK_LDFLAGS="$CFLAGS_RDYNAMIC"
311     use_gnupg_extensions=yes
312   else
313     AC_CHECK_LIB(c,dlopen)
314     if test "$ac_cv_lib_c_dlopen" = "yes"; then
315       AC_DEFINE(USE_DYNAMIC_LINKING)
316       AC_DEFINE(HAVE_DL_DLOPEN)
317       DYNLINK_LDFLAGS="$CFLAGS_RDYNAMIC"
318       use_gnupg_extensions=yes
319     else
320       AC_CHECK_LIB(dld,shl_load)
321       if test "$ac_cv_lib_dld_shl_load" = "yes"; then
322         AC_DEFINE(USE_DYNAMIC_LINKING)
323         AC_DEFINE(HAVE_DL_SHL_LOAD)
324         DYNLINK_LDFLAGS="$CFLAGS_RDYNAMIC"
325         use_gnupg_extensions=yes
326 dnl -----------------
327 dnl  DLD is not ready for use. So I better disable this test
328 dnl
329 dnl    AC_CHECK_LIB(dld,dld_link)
330 dnl    if test "$ac_cv_lib_dld_dld_link" = "yes"; then
331 dnl      AC_DEFINE(USE_DYNAMIC_LINKING)
332 dnl      AC_DEFINE(HAVE_DLD_DLD_LINK)
333 dnl      DYNLINK_LDFLAGS="$CFLAGS_RDYNAMIC"
334 dnl      use_gnupg_extensions=yes
335 dnl ---------------
336       fi
337     fi
338   fi
339 else
340   AC_MSG_CHECKING(for dynamic loading)
341   DYNLINK_LDFLAGS=
342   DYNLINK_MOD_CFLAGS=
343   use_gnupg_extensions=no
344   AC_MSG_RESULT(has been disabled)
345 fi
346
347 AM_CONDITIONAL(ENABLE_GNUPG_EXTENSIONS, test "$use_gnupg_extensions" = yes )
348 AC_SUBST(DYNLINK_LDFLAGS)
349 AC_SUBST(DYNLINK_MOD_CFLAGS)
350
351
352 dnl Checks for header files.
353 AC_HEADER_STDC
354 AC_CHECK_HEADERS(unistd.h langinfo.h)
355
356
357 dnl Checks for typedefs, structures, and compiler characteristics.
358 AC_C_CONST
359 AC_C_INLINE
360 AC_TYPE_SIZE_T
361 AC_TYPE_SIGNAL
362 AC_DECL_SYS_SIGLIST
363
364 GNUPG_CHECK_ENDIAN
365
366
367 GNUPG_CHECK_TYPEDEF(byte, HAVE_BYTE_TYPEDEF)
368 GNUPG_CHECK_TYPEDEF(ushort, HAVE_USHORT_TYPEDEF)
369 GNUPG_CHECK_TYPEDEF(ulong, HAVE_ULONG_TYPEDEF)
370 GNUPG_CHECK_TYPEDEF(u16, HAVE_U16_TYPEDEF)
371 GNUPG_CHECK_TYPEDEF(u32, HAVE_U32_TYPEDEF)
372
373 AC_CHECK_SIZEOF(unsigned short, 2)
374 AC_CHECK_SIZEOF(unsigned int, 4)
375 AC_CHECK_SIZEOF(unsigned long, 4)
376
377 if test "$ac_cv_sizeof_unsigned_short" = "0" \
378    || test "$ac_cv_sizeof_unsigned_int" = "0" \
379    || test "$ac_cv_sizeof_unsigned_long" = "0"; then
380     AC_MSG_WARN([Hmmm, something is wrong with the sizes - using defaults]);
381 fi
382
383
384
385 dnl Checks for library functions.
386 AC_FUNC_VPRINTF
387 AC_CHECK_FUNCS(strerror stpcpy strlwr stricmp tcgetattr rand strtoul mmap)
388 AC_CHECK_FUNCS(memmove gettimeofday getrusage gethrtime setrlimit)
389 AC_CHECK_FUNCS(memicmp atexit raise getpagesize strftime nl_langinfo)
390
391 GNUPG_CHECK_MLOCK
392
393 dnl
394 dnl Check whether we can use Linux capabilities as requested
395 dnl
396 if test "$use_capabilities" = "yes" ; then
397 use_capabilities=no
398 AC_CHECK_HEADERS(sys/capability.h)
399 if test "$ac_cv_header_sys_capability_h" = "yes" ; then
400   AC_CHECK_LIB(cap, cap_init, ac_need_libcap=1)
401   if test "$ac_cv_lib_cap_cap_init" = "yes"; then
402      AC_DEFINE(USE_CAPABILITIES)
403      use_capabilities=yes
404   fi
405 fi
406 if test "$use_capabilities" = "no" ; then
407     AC_MSG_WARN([[
408 ***
409 *** The use of capabilities on this system is not possible.
410 *** You need a recent Linux kernel and some patches:
411 ***   fcaps-2.2.9-990610.patch      (kernel patch for 2.2.9)
412 ***   fcap-module-990613.tar.gz     (kernel module)
413 ***   libcap-1.92.tar.gz            (user mode library and utilities)
414 *** And you have to configure the kernel with CONFIG_VFS_CAP_PLUGIN
415 *** set (filesystems menu). Be warned: This code is *really* ALPHA.
416 ***]])
417 fi
418 fi
419
420
421 GNUPG_CHECK_IPC
422 if test "$ac_cv_header_sys_shm_h" = "yes"; then
423   AC_DEFINE(USE_SHM_COPROCESSING)
424 fi
425
426 dnl
427 dnl check whether we have a random device
428 dnl
429 if test "$try_dev_random" = yes ; then
430     AC_CACHE_CHECK(for random device, ac_cv_have_dev_random,
431     [if test -c "$NAME_OF_DEV_RANDOM" && test -c "$NAME_OF_DEV_URANDOM" ; then
432       ac_cv_have_dev_random=yes; else ac_cv_have_dev_random=no; fi])
433     if test "$ac_cv_have_dev_random" = yes; then
434         AC_DEFINE(HAVE_DEV_RANDOM)
435     fi
436 else
437     AC_MSG_CHECKING(for random device)
438     ac_cv_have_dev_random=no
439     AC_MSG_RESULT(has been disabled)
440 fi
441
442 dnl
443 dnl and whether this device supports ioctl
444 dnl (Note, that we should do a real test here)
445 dnl
446 if test "$ac_cv_have_dev_random" = yes ; then
447     AC_CHECK_HEADERS(linux/random.h)
448     AC_CACHE_CHECK(for random device ioctl, ac_cv_have_dev_random_ioctl,
449       [ if test "$ac_cv_header_linux_random_h" = yes ; then
450           ac_cv_have_dev_random_ioctl=yes;
451         else
452           ac_cv_have_dev_random_ioctl=no;
453         fi
454       ])
455     if test "$ac_cv_have_dev_random_ioctl" = yes; then
456         AC_DEFINE(HAVE_DEV_RANDOM_IOCTL)
457     fi
458 fi
459
460
461 dnl
462 dnl Figure out the default linkage mode for cipher modules
463 dnl
464 dnl (We always need a static rmd160)
465 print_egd_notice=no
466 static_modules="$static_modules rmd160"
467 if test "$use_static_rnd" = default; then
468   if test "$ac_cv_have_dev_random" = yes; then
469       static_modules="$static_modules rndlinux"
470   else
471       case "${target}" in
472           i386--mingw32)
473               static_modules="$static_modules rndw32"
474               ;;
475           i386-emx-os2|i[3456]86-pc-os2*emx)
476               static_modules="$static_modules rndos2"
477               ;;
478           m68k-atari-mint)
479               static_modules="$static_modules rndatari"
480               ;;
481           *)
482               static_modules="$static_modules rndunix"
483               print_egd_notice=yes
484              ;;
485       esac
486   fi
487 else
488   if test "$use_static_rnd" = none; then
489     :
490   else
491     static_modules="$static_modules rnd$use_static_rnd"
492     if test "$use_static_rnd" = "unix"; then
493         print_egd_notice=yes
494     fi
495   fi
496 fi
497
498
499 if test "$print_egd_notice" = "yes"; then
500     AC_MSG_WARN([[
501 ***
502 *** The performance of the UNIX random gatherer module is not very good
503 *** and it does not keep the entropy pool over multiple invocations of
504 *** GnuPG.  The suggested way to overcome this problem is to use the
505 ***
506 ***               Entropy Gathering Daemon (EGD)
507 ***
508 *** which provides a entropy source for the whole system.  It is written
509 *** in Perl and available at the GnuPG FTP servers.  For more information
510 *** consult the GnuPG webpages:
511 ***
512 ***           http://www.gnupg.org/donwload.html#egd
513 ***
514 *** You may want to run ./configure with --enable-static-rnd=none to be
515 *** able to load the EGD client code dynamically; this way you can choose
516 *** between RNDUNIX and RNDEGD without recompilation.
517 ***]])
518 fi
519
520 dnl
521 dnl Parse the modules list and build the list
522 dnl of static and dymically linked modules
523 dnl
524 STATIC_CIPHER_NAMES=""
525 STATIC_CIPHER_OBJS=""
526 DYNAMIC_CIPHER_MODS=""
527 GNUPG_MSG_PRINT([dynamically linked cipher modules:])
528 for name in $MODULES_IN_CIPHER; do
529     x="no"
530     for i in $static_modules; do
531         if test "$name" = "$i" ; then
532             x="yes"
533         fi
534     done;
535     if test $x = yes; then
536         STATIC_CIPHER_NAMES="$STATIC_CIPHER_NAMES $name"
537         STATIC_CIPHER_OBJS="$STATIC_CIPHER_OBJS $name.lo"
538     else
539         DYNAMIC_CIPHER_MODS="$DYNAMIC_CIPHER_MODS $name"
540         GNUPG_MSG_PRINT([$name])
541     fi
542 done
543 AC_MSG_RESULT()
544 AC_SUBST(STATIC_CIPHER_OBJS)
545 AC_SUBST(STATIC_CIPHER_NAMES)
546 AC_SUBST(DYNAMIC_CIPHER_MODS)
547
548 dnl
549 dnl And build the constructor file
550 dnl
551
552 test -d cipher || mkdir cipher
553 cat <<G10EOF >cipher/construct.c
554 /* automatically generated by configure - do not edit */
555
556 G10EOF
557 GNUPG_MSG_PRINT([statically linked cipher modules:])
558 for name in $STATIC_CIPHER_NAMES; do
559     echo "void ${name}_constructor(void);" >>cipher/construct.c
560     GNUPG_MSG_PRINT([$name])
561 done
562 AC_MSG_RESULT()
563 cat <<G10EOF >>cipher/construct.c
564
565 void
566 cipher_modules_constructor(void)
567 {
568     static int done = 0;
569     if( done )
570         return;
571     done = 1;
572
573 G10EOF
574 for name in $STATIC_CIPHER_NAMES; do
575     echo "   ${name}_constructor();" >>cipher/construct.c
576 done
577 echo '}' >>cipher/construct.c
578
579
580
581
582 dnl
583 dnl Figure how to link the cipher modules
584 dnl
585 AC_SUBST(STATIC_CIPHER_OBJS)
586 AC_SUBST(DYNAMIC_CIPHER_MODS)
587
588
589 dnl setup assembler stuff
590 AC_MSG_CHECKING(for mpi assembler functions)
591 if test -f $srcdir/mpi/config.links ; then
592     . $srcdir/mpi/config.links
593     GNUPG_LINK_FILES($mpi_ln_src, $mpi_ln_dst)
594     ac_cv_mpi_extra_asm_modules="$mpi_extra_modules"
595     ac_cv_mpi_sflags="$mpi_sflags"
596     ac_cv_mpi_config_done="yes"
597     AC_MSG_RESULT(done)
598 else
599     AC_MSG_RESULT(failed)
600     AC_MSG_ERROR([mpi/config.links missing!])
601 fi
602 MPI_EXTRA_ASM_OBJS=""
603 if test "$ac_cv_mpi_extra_asm_modules" != ""; then
604 GNUPG_MSG_PRINT([mpi extra asm functions:])
605 for i in $ac_cv_mpi_extra_asm_modules; do
606     GNUPG_MSG_PRINT([$i])
607     MPI_EXTRA_ASM_OBJS="$MPI_EXTRA_ASM_OBJS $i.lo"
608 done
609 AC_MSG_RESULT()
610 fi
611 AC_SUBST(MPI_EXTRA_ASM_OBJS)
612 MPI_SFLAGS="$ac_cv_mpi_sflags"
613 AC_SUBST(MPI_SFLAGS)
614
615 dnl Do we have zlib? Must do it here because Solaris failed
616 dnl when compiling a conftest (due to the "-lz" from LIBS).
617 use_local_zlib=yes
618 if test "$g10_force_zlib" = "yes"; then
619   :
620 else
621   AC_CHECK_HEADERS(zlib.h)
622   if test "$ac_cv_header_zlib_h" = yes ; then
623       AC_CHECK_LIB(z,deflateInit2_,use_local_zlib=no,:)
624   fi
625 fi
626
627 if test "$use_local_zlib" = yes ; then
628     AM_CONDITIONAL(ENABLE_LOCAL_ZLIB, true)
629     GNUPG_LINK_FILES(zlib/zlib.h, zlib.h )
630     GNUPG_LINK_FILES(zlib/zconf.h, zconf.h )
631     ZLIBS="../zlib/libzlib.a"
632 else
633     AM_CONDITIONAL(ENABLE_LOCAL_ZLIB, false)
634     ZLIBS=
635     LIBS="-lz $LIBS"
636 fi
637 AC_SUBST(ZLIBS)
638
639
640 changequote(,)dnl
641 tmp_pat='[a-zA-Z]'
642 changequote([,])dnl
643 if echo "$VERSION" | grep $tmp_pat >/dev/null ; then
644     AC_DEFINE(IS_DEVELOPMENT_VERSION)
645 fi
646
647 GNUPG_DO_LINK_FILES
648
649
650 AC_OUTPUT_COMMANDS([
651 cat >g10defs.tmp <<G10EOF
652 /* Generated automatically by configure */
653 #ifdef HAVE_DRIVE_LETTERS
654   #define G10_LOCALEDIR "c:/lib/gnupg/locale"
655   #define GNUPG_LIBDIR  "c:/lib/gnupg"
656   #define GNUPG_DATADIR "c:/lib/gnupg"
657 #else
658   #define G10_LOCALEDIR "${prefix}/${DATADIRNAME}/locale"
659   #define GNUPG_LIBDIR  "${libdir}/gnupg"
660   #define GNUPG_DATADIR "${datadir}/gnupg"
661 #endif
662 G10EOF
663 if cmp -s g10defs.h g10defs.tmp 2>/dev/null; then
664     echo "g10defs.h is unchanged"
665     rm -f g10defs.tmp
666 else
667     rm -f g10defs.h
668     mv g10defs.tmp g10defs.h
669     echo "g10defs.h created"
670 fi
671 ],[
672 prefix=$prefix
673 exec_prefix=$exec_prefix
674 libdir=$libdir
675 datadir=$datadir
676 DATADIRNAME=$DATADIRNAME
677 ])
678
679
680 AC_OUTPUT([
681 Makefile
682 intl/Makefile
683 po/Makefile.in
684 util/Makefile
685 mpi/Makefile
686 cipher/Makefile
687 g10/Makefile
688 doc/Makefile
689 tools/Makefile
690 zlib/Makefile
691 checks/Makefile
692 gcrypt/Makefile
693 ])
694
695 dnl *-*wedit:notab*-*  Please keep this as the last line.