Fix bug dividing small things by large ones.
[u/mdw/catacomb] / configure.in
CommitLineData
d03ab969 1dnl -*-fundamental-*-
2dnl
09fcc485 3dnl $Id: configure.in,v 1.24 2003/05/16 00:30:28 mdw Exp $
d03ab969 4dnl
5dnl Autoconfiguration for Catacomb
6dnl
7dnl (c) 1999 Straylight/Edgeware
8dnl
9
10dnl ----- Licensing notice --------------------------------------------------
11dnl
12dnl This file is part of Catacomb.
13dnl
14dnl Catacomb is free software; you can redistribute it and/or modify
15dnl it under the terms of the GNU Library General Public License as
16dnl published by the Free Software Foundation; either version 2 of the
17dnl License, or (at your option) any later version.
18dnl
19dnl Catacomb is distributed in the hope that it will be useful,
20dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
21dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22dnl GNU Library General Public License for more details.
23dnl
24dnl You should have received a copy of the GNU Library General Public
25dnl License along with Catacomb; if not, write to the Free
26dnl Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
27dnl MA 02111-1307, USA.
28
29dnl ----- Revision history --------------------------------------------------
30dnl
31dnl $Log: configure.in,v $
09fcc485 32dnl Revision 1.24 2003/05/16 00:30:28 mdw
33dnl Version bump.
34dnl
d69eb0bb 35dnl Revision 1.23 2001/03/04 13:09:40 mdw
36dnl Mark dependency on mLib 2.0.0pre4 now.
d8aff488 37dnl
c855281e 38dnl Revision 1.21 2000/10/08 12:01:28 mdw
39dnl Reinstate the `-pedantic' option.
40dnl
8de066ff 41dnl Revision 1.20 2000/08/15 21:45:25 mdw
42dnl New library configuration stuff from `common'.
4992e237 43dnl
d28a0d16 44dnl Revision 1.13 2000/06/17 13:51:03 mdw
45dnl Whoops. Too eager with the mLib version.
46dnl
25f654a7 47dnl Revision 1.12 2000/06/17 12:57:47 mdw
48dnl New free counter noise generator, for use if /dev/random is
49dnl unavailable.
50dnl
93100380 51dnl Revision 1.11 2000/06/17 10:51:23 mdw
52dnl Version number changes. Find maths library for Maurer's test.
53dnl
db2623e1 54dnl Revision 1.10 1999/12/22 16:03:31 mdw
55dnl New mLib version. Find socket functions for pixie.
8582bb3b 56dnl
77783960 57dnl Revision 1.7 1999/11/13 01:55:48 mdw
58dnl Don't be pedantic, because using `long long' as a multiprecision type
59dnl gets complained about.
60dnl
ffc086db 61dnl Revision 1.6 1999/11/11 18:56:14 mdw
62dnl Use `libtool' to generate a shared library.
a094cab7 63dnl
64dnl Revision 1.5 1999/11/11 17:47:34 mdw
65dnl Updates for new configuration system, and `mptypes' generator.
f122f08e 66dnl
67dnl Revision 1.4 1999/11/11 00:58:19 mdw
68dnl Use canned check for `ssize_t'.
748ed8dc 69dnl
f122f08e 70dnl Revision 1.3 1999/10/24 10:20:36 mdw
748ed8dc 71dnl Modify for standalone distribution. The library's getting far too large
72dnl to be sensibly embedded in other programs.
6fcd939f 73dnl
d03ab969 74dnl Revision 1.1 1999/09/03 08:41:11 mdw
75dnl Initial import.
76dnl
77
6fcd939f 78dnl --- Boring boilerplate ---
d03ab969 79
80AC_INIT(blkc.h)
09fcc485 81mdw_INIT_LIB(catacomb, Catacomb, 2.0.0)
d03ab969 82AM_CONFIG_HEADER(config.h)
83
84dnl --- Make sure I can compile and build libraries ---
85
86AC_PROG_CC
ffc086db 87AM_PROG_LIBTOOL
c855281e 88mdw_GCC_FLAGS
d03ab969 89
90AC_PROG_YACC
91
92dnl --- Actually, I assume these exist anyway ---
93
94AC_CHECK_HEADERS(unistd.h)
95AC_HEADER_STDC
96
97dnl --- Check for various important system types ---
98
99AC_TYPE_PID_T
f122f08e 100AC_TYPE_SIZE_T
d03ab969 101AC_TYPE_UID_T
102AC_CHECK_TYPE(time_t, long)
103mdw_TYPE_SSIZE_T
104
93100380 105dnl --- The maths library, for Maurer's test ---
106
107mdw_CHECK_MANYLIBS(log, m,,, [#include <math.h>], [2])
108mdw_CHECK_MANYLIBS(sqrt, m,,, [#include <math.h>], [2])
109
25f654a7 110dnl --- Functions used for noise-gathering ---
d03ab969 111
112AC_CHECK_FUNCS(setgroups)
a094cab7 113
25f654a7 114AC_CACHE_CHECK([whether the freewheel noise generator will work],
115[catacomb_cv_freewheel],
116[AC_TRY_LINK([
117#include <setjmp.h>
118#include <sys/time.h>
119],
120[struct itimerval itv = { { 0, 0 }, { 0, 5000 } };
121jmp_buf j;
122setitimer(ITIMER_REAL, &itv, 0);
123sigsetjmp(j, 1);],
124[catacomb_cv_freewheel=yes],
125[catacomb_cv_freewheel=no])])
126if test "$catacomb_cv_freewheel" = "yes"; then
127 AC_DEFINE([USE_FREEWHEEL])
128fi
129
db2623e1 130dnl --- Support for the passphrase pixie ---
131
132mdw_CHECK_MANYLIBS(socket, socket)
133AC_CHECK_FUNCS(mlock)
134
d03ab969 135dnl --- Done ---
136
09fcc485 137mdw_MLIB(2.0.0)
8de066ff 138AC_OUTPUT(Makefile tests/Makefile catacomb-config:lib-config.in qcc,
139 chmod 755 qcc)
d03ab969 140
141dnl ----- That's all, folks -------------------------------------------------