Use auto-version machinery for building.
[u/mdw/catacomb] / configure.in
CommitLineData
2ee993fe 1dnl -*-m4-*-
d03ab969 2dnl
e4fb6b4d 3dnl $Id$
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.
45c0fd36 18dnl
d03ab969 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.
45c0fd36 23dnl
d03ab969 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
6fcd939f 29dnl --- Boring boilerplate ---
d03ab969 30
7280f7f4
MW
31mdw_AUTO_VERSION
32AC_INIT(catacomb, AUTO_VERSION, mdw@distorted.org.uk)
33AC_CONFIG_SRCDIR(blkc.h)
ce5cb7e4 34AC_CONFIG_AUX_DIR(.)
7280f7f4
MW
35AM_CONFIG_HEADER(config.h)
36AM_INIT_AUTOMAKE(foreign)
d03ab969 37
38dnl --- Make sure I can compile and build libraries ---
39
40AC_PROG_CC
ffc086db 41AM_PROG_LIBTOOL
4263ac2b 42AX_CFLAGS_WARN_ALL
d03ab969 43
44AC_PROG_YACC
45
46dnl --- Actually, I assume these exist anyway ---
47
48AC_CHECK_HEADERS(unistd.h)
49AC_HEADER_STDC
50
51dnl --- Check for various important system types ---
52
4263ac2b
MW
53AC_CHECK_TYPE(pid_t, int)
54AC_CHECK_TYPE(size_t, unsigned)
d03ab969 55AC_TYPE_UID_T
56AC_CHECK_TYPE(time_t, long)
4263ac2b 57AC_CHECK_TYPE(ssize_t, int)
d03ab969 58
93100380 59dnl --- The maths library, for Maurer's test ---
60
4263ac2b
MW
61OLIBS=$LIBS
62AC_SEARCH_LIBS(log, m)
63AC_SEARCH_LIBS(sqrt, m)
64AC_SUBST([CATACOMB_LIBS], [$LIBS]) LIBS=$OLIBS
93100380 65
25f654a7 66dnl --- Functions used for noise-gathering ---
d03ab969 67
68AC_CHECK_FUNCS(setgroups)
a094cab7 69
25f654a7 70AC_CACHE_CHECK([whether the freewheel noise generator will work],
71[catacomb_cv_freewheel],
72[AC_TRY_LINK([
73#include <setjmp.h>
74#include <sys/time.h>
75],
76[struct itimerval itv = { { 0, 0 }, { 0, 5000 } };
77jmp_buf j;
78setitimer(ITIMER_REAL, &itv, 0);
79sigsetjmp(j, 1);],
80[catacomb_cv_freewheel=yes],
81[catacomb_cv_freewheel=no])])
82if test "$catacomb_cv_freewheel" = "yes"; then
e4fb6b4d 83 AC_DEFINE([USE_FREEWHEEL], [1],
45c0fd36 84 [Define if you want to use the freewheel noise generator.])
25f654a7 85fi
86
db2623e1 87dnl --- Support for the passphrase pixie ---
88
4263ac2b
MW
89OLIBS=$LIBS
90AC_SEARCH_LIBS(socket, socket)
91AC_SUBST([PIXIE_LIBS], [$LIBS]) LIBS=$OLIBS
db2623e1 92AC_CHECK_FUNCS(mlock)
93
c29970a7
MW
94dnl --- Debugging things ---
95
45c0fd36
MW
96AC_ARG_ENABLE([mpw],
97 [AS_HELP_STRING([--enable-mpw],
98 [force small-width mp digits])],
99 [case "$enableval" in
100 y*|t*|short)
101 AC_DEFINE([FORCE_MPW_SHORT], [1],
102 [Define to force small-width mp digits.])
103 ;;
104 cussid)
105 AC_DEFINE([FORCE_MPW_CUSSID], [1],
106 [Define to force strange-width mp digits.])
107 ;;
108 esac])
c29970a7 109
d03ab969 110dnl --- Done ---
111
4263ac2b
MW
112PKG_CHECK_MODULES(mLib, mLib >= 2.0.4)
113CFLAGS="$CFLAGS $mLib_CFLAGS"
114LIBS="$LIBS $mLib_LIBS"
115AC_OUTPUT(Makefile tests/Makefile catacomb.pc qcc,
8de066ff 116 chmod 755 qcc)
d03ab969 117
118dnl ----- That's all, folks -------------------------------------------------