*** empty log message ***
[idzebra-moved-to-github.git] / configure.in
1 dnl Zebra, Index Data Aps, 1994-2002
2 dnl $Id: configure.in,v 1.32 2002-03-15 20:11:36 adam Exp $
3 dnl
4 AC_INIT(include/zebraver.h)
5 AC_MSG_CHECKING(for package)
6 if test -r ${srcdir}/LICENSE.zmbol; then
7         AC_MSG_RESULT([Z'mbol])
8         PROGPREFIX=zmbol
9         AC_DEFINE(ZMBOL,1)
10         AM_INIT_AUTOMAKE(zmbol,1.1.1)
11 else
12         AC_MSG_RESULT([Zebra])
13         PROGPREFIX=zebra
14         AC_DEFINE(ZMBOL,0)
15         AM_INIT_AUTOMAKE(zebra,1.1.1)
16         if test ! -r ${srcdir}/isam; then
17                 mkdir ${srcdir}/isam
18         fi
19         touch ${srcdir}/isam/Makefile.in
20         if test ! -r ${srcdir}/isamc; then
21                 mkdir ${srcdir}/isamc
22         fi
23         touch ${srcdir}/isamc/Makefile.in
24         if test ! -r ${srcdir}/isamb; then
25                 mkdir ${srcdir}/isamb
26         fi
27         touch ${srcdir}/isamb/Makefile.in
28 fi
29 AM_CONDITIONAL(ISZMBOL,test $PACKAGE = zmbol)
30 dnl ------ Substitutions
31 AC_SUBST(DEFS)
32 AC_SUBST(TCL_INCLUDE)
33 AC_SUBST(TCL_LIB)
34 AC_SUBST(PROGPREFIX)
35 dnl
36 dnl ------ Checking programs
37 AC_PROG_CC
38 AC_PROG_CPP
39 AC_PROG_INSTALL
40 AC_PROG_RANLIB
41
42 YAZ_INIT(threads)
43 dnl
44 dnl ------ Look for Tcl
45 dnl See if user has specified location of tclConfig.sh; otherwise
46 dnl see if tclConfig.sh exists in same prefix lcoation as tclsh; otherwise
47 dnl disable Tcl.
48 TCL_LIB=""
49 TCL_INCLUDE=""
50 tclconfig=NONE
51 AC_ARG_WITH(tclconfig, [  --with-tclconfig=DIR    tclConfig.sh in DIR], [tclconfig=$withval])
52 if test "x$tclconfig" = xNONE; then
53         saveprefix=${prefix}
54         AC_PREFIX_PROGRAM(tclsh)
55         tclconfig=${prefix}/lib
56         prefix=${saveprefix}
57 fi
58 AC_MSG_CHECKING(for Tcl)
59 if test -r ${tclconfig}/tclConfig.sh; then
60         . ${tclconfig}/tclConfig.sh
61         if test -r ${tclconfig}/../generic/tcl.h; then
62                 TCL_INCLUDE=-I${tclconfig}/../generic
63                 TCL_LIB="$TCL_BUILD_LIB_SPEC $TCL_LIBS"
64         else
65                 TCL_INCLUDE=-I${TCL_PREFIX}/include
66                 TCL_LIB="$TCL_LIB_SPEC $TCL_LIBS"
67         fi
68         SHLIB_CFLAGS=$TCL_SHLIB_CFLAGS
69         SHLIB_LD=$TCL_SHLIB_LD
70         SHLIB_SUFFIX=$TCL_SHLIB_SUFFIX
71         SHLIB_VERSION=$TCL_SHLIB_VERSION
72         AC_MSG_RESULT($TCL_VERSION)
73         AC_DEFINE(HAVE_TCL_H,1)
74 else
75         AC_MSG_RESULT(Not found)
76         AC_DEFINE(HAVE_TCL_H,0)
77 fi
78 dnl
79 dnl ------ times
80 AC_CHECK_HEADERS(sys/times.h)
81 dnl ------ mkstemp
82 AC_CHECK_FUNCS(mkstemp)
83 dnl
84 dnl ------- BZIP2
85 AC_CHECK_LIB(bz2,bzCompressInit)
86 if test "$ac_cv_lib_bz2_bzCompressInit" = "yes"; then
87         AC_CHECK_HEADERS(bzlib.h)
88 else
89         AC_CHECK_LIB(bz2,BZ2_bzCompressInit)
90         if test "$ac_cv_lib_bz2_BZ2_bzCompressInit" = "yes"; then
91                 AC_CHECK_HEADERS(bzlib.h)
92         fi
93 fi
94 dnl ------- 64 bit files
95 AC_MSG_CHECKING(for LFS)
96 AC_TRY_RUN([#define _FILE_OFFSET_BITS 64
97 #include <sys/types.h>
98 #include <unistd.h>
99 #include <string.h>
100 #include <stdio.h>
101 #include <fcntl.h>
102 #include <errno.h>
103 int main(int argc, char **argv)
104 {
105         off_t o;
106         char tmp_str[32];
107         int fd;
108         struct flock area;
109         if (sizeof(off_t) != 8) 
110                 exit (1);
111         o = 2000000000;
112         sprintf (tmp_str, "%Ld", o+o+o);
113         if (strcmp (tmp_str, "6000000000"))
114                 exit (1);
115         fd = creat ("config.tmp", 0644);
116         if (fd < 0)
117                 exit (1);
118         area.l_type = F_WRLCK;
119         area.l_whence = SEEK_SET;
120         area.l_len = area.l_start = 0L;
121         if (fcntl(fd, F_SETLKW, &area))
122                 exit (1);
123         close (fd);
124         unlink ("config.tmp");
125         exit (0);
126 }
127 ],bits=64,bits=32,bits=32)
128 if test "$bits" = "64"; then
129         AC_DEFINE(_FILE_OFFSET_BITS,64)
130         AC_MSG_RESULT(yes)
131 else
132         AC_MSG_RESULT(no)
133 fi
134 dnl
135 dnl ------ ANSI C Header files
136 AC_STDC_HEADERS
137 if test "$ac_cv_header_stdc" = "no"; then
138         AC_MSG_WARN(Your system doesn't seem to support ANSI C)
139 fi
140 dnl ------ Create Makefiles
141 AC_OUTPUT([
142   Makefile
143   util/Makefile
144   bfile/Makefile
145   dfa/Makefile
146   dict/Makefile
147   isamb/Makefile
148   isams/Makefile
149   isamc/Makefile
150   isam/Makefile
151   rset/Makefile
152   recctrl/Makefile
153   index/Makefile
154   include/Makefile
155   tab/Makefile
156   doc/Makefile
157   test/Makefile test/gils/Makefile test/usmarc/Makefile test/api/Makefile
158 ])