Fix memory leaks.
[pspp-builds.git] / configure.ac
1 dnl Process this file with autoconf to produce a configure script.
2
3 dnl Initialize.
4 AX_PREREQ(2.57)
5 AC_INIT(pspp, 0.3.1,bug-gnu-pspp@gnu.org)
6 AC_CONFIG_HEADERS([config.h])
7 AM_INIT_AUTOMAKE
8
9 dnl Checks for programs.
10 AC_GNU_SOURCE
11 AC_PROG_CC
12
13 AM_CONDITIONAL(cc_is_gcc, test x"$GCC" = x"yes" )
14
15
16
17 dnl Internationalization macros.
18 AM_GNU_GETTEXT
19 AM_GNU_GETTEXT_VERSION  dnl Prevents autoreconf complaint.
20
21 dnl Checks for libraries.
22 AC_SYS_LARGEFILE
23 AC_FUNC_FSEEKO
24 AC_CHECK_LIB(m, sin)
25 AC_CHECK_LIB(gmp, mpf_get_str,,
26         AC_CHECK_LIB(gmp, __gmpf_get_str,,
27           AC_MSG_ERROR([You must install libgmp])
28         )
29 )
30
31 AC_CHECK_LIB(gslcblas,main,,AC_MSG_ERROR([You must install libgslcblas]))
32 AC_CHECK_LIB(gsl, gsl_cdf_chisq_Q,,
33         AC_MSG_ERROR([You must install libgsl version 1.4 or later]))
34
35 AC_CHECK_LIB(gnugetopt,getopt_long)
36 AC_CHECK_FUNC(getopt_long,,
37         AC_MSG_ERROR(`This application depends upon getopt_long'))
38
39 AC_CHECK_LIB(ncurses, tgetent, LIBS="-lncurses $LIBS" termcap=yes,
40   AC_CHECK_LIB(termcap, tgetent, LIBS="-ltermcap $LIBS" termcap=yes,
41                termcap=no))
42 if test "$termcap" = yes; then
43   AC_CHECK_HEADERS(termcap.h)
44   AC_DEFINE(HAVE_LIBTERMCAP, 1, 
45         [Define if you have the termcap library (-ltermcap).])
46 fi
47
48 AC_CHECK_LIB(readline, readline)
49 if test "$ac_cv_lib_readline_readline" = yes; then
50   AC_CHECK_HEADERS(readline/readline.h)
51   AC_CHECK_LIB(readline, add_history, history=yes,
52     AC_CHECK_LIB(history, add_history, LIBS="-lhistory" history=yes,
53                  history=no))
54   if test "$history" = yes; then
55     AC_CHECK_HEADERS(readline/history.h)
56     AC_DEFINE(HAVE_LIBHISTORY, 1,
57         [Define if you have the history library (-lhistory).])
58   fi
59 fi
60
61 dnl Checks for header files.
62 AC_CHECK_HEADERS([limits.h memory.h sys/stat.h sys/time.h sys/types.h \
63                   fpu_control.h sys/mman.h sys/wait.h ieeefp.h fenv.h \
64                   valgrind/valgrind.h])
65 AC_HEADER_STAT
66 AC_HEADER_STDC
67 AC_HEADER_TIME
68
69 AC_C_CONST
70 AC_C_INLINE
71 AC_TYPE_SIZE_T
72 AC_STRUCT_TM
73
74 AC_CHECK_SIZEOF(short, 2)
75 AC_CHECK_SIZEOF(int, 4)
76 AC_CHECK_SIZEOF(long, 4)
77 AC_CHECK_SIZEOF(long long, 0)
78 AC_CHECK_SIZEOF(float, 0)
79 AC_CHECK_SIZEOF(double, 8)
80 AC_CHECK_SIZEOF(long double, 0)
81
82 AC_DEFINE(FPREP_IEEE754, 1,
83         [Define for machines that have IEEE 754 floating point arithmetic,
84          the most common format today.])
85
86 AC_C_BIGENDIAN
87
88 BLP_IS_SPRINTF_GOOD
89 BLP_INT_DIGITS
90 BLP_RANDOM
91
92 AC_FUNC_ALLOCA
93 AC_FUNC_MEMCMP
94 AC_FUNC_VPRINTF
95 AC_REPLACE_FUNCS([memmove memset stpcpy strpbrk strerror strtol strtoul \
96                   memchr getline getdelim strcasecmp strncasecmp memmem \
97                   strtok_r])
98 AC_CHECK_FUNCS([gethostname strstr strtod __setfpucw isinf isnan finite \
99                 getpid feholdexcept mkdtemp])
100
101 AC_PROG_LN_S
102
103
104 AH_BOTTOM([#include <pref.h>])
105
106
107 AM_CONDITIONAL(unix, test x"$host_os" != x"msdos" )
108 AM_CONDITIONAL(msdos, test x"$host_os" == x"msdos" )
109
110 dnl This is needed otherwise --with-included-gettext fails
111 AH_BOTTOM([#include <locale.h>])
112
113 AC_ARG_ENABLE(debug, [  --enable-debug          Turn on diagnostic features in the program])
114 if test x"$enable_debug" = x"yes"  ; then
115   AC_DEFINE(DEBUGGING, 1, [Define to 1 if debugging is enabled.])
116 fi
117
118 AC_CONFIG_FILES([Makefile po/Makefile.in m4/Makefile 
119                  lib/Makefile lib/julcal/Makefile lib/misc/Makefile 
120                  doc/Makefile src/Makefile 
121                  config/Makefile tests/Makefile])
122 AC_CONFIG_COMMANDS([pref.h],[
123            # Copy pref.h from pref.h.orig if prudent
124            if test ! -f pref.h; then
125              echo "creating pref.h"
126              cp $ac_given_srcdir/pref.h.orig pref.h
127            elif test "`ls -t pref.h.orig pref.h 2>/dev/null | sed 1q`" = pref.h.orig; then
128              echo "replacing pref.h with newer pref.h.orig"
129              cp $ac_given_srcdir/pref.h.orig pref.h
130            else
131              echo "pref.h exists"
132            fi
133            if test -f pref.h; then touch pref.h; fi
134           ])
135 AC_OUTPUT(intl/Makefile)
136
137 dnl configure.ac ends here