e08d6b135207c1c9c6e2320b74742900e66d6468
[idzebra-moved-to-github.git] / configure.in
1 dnl Zebra, Index Data Aps, 1994-1999
2 dnl $Id: configure.in,v 1.17 2000-03-15 15:00:30 adam Exp $
3 dnl See the file LICENSE.2 for details.
4 dnl
5 AC_INIT(include/zebraver.h)
6 dnl ------ Substitutions
7 AC_SUBST(ODEFS)
8 AC_SUBST(DEFS)
9 AC_SUBST(TCL_INCLUDE)
10 AC_SUBST(TCL_LIB)
11 AC_SUBST(YAZLIB)
12 AC_SUBST(YAZINC)
13 AC_SUBST(SUBDIR)
14 AC_SUBST(SUBLIBS)
15 AC_SUBST(PROGPREFIX)
16 dnl
17 dnl ------ Checking programs
18 AC_PROG_CC
19 AC_PROG_CPP
20 AC_PROG_INSTALL
21 AC_PROG_RANLIB
22 dnl
23 dnl ------ Create sub directory lib/bin
24 if test ! -d lib; then
25         mkdir lib
26 fi
27 if test ! -d bin; then
28         mkdir bin
29 fi
30 dnl ------ Build root
31 AC_SUBST(build_root)
32 AC_ARG_WITH(build-root, [  --with-buildroot        RPM Build root],[build_root=$withval],[build_root=""])
33 dnl
34 dnl ------ Look for Yaz
35 dnl See if user specified location of yaz-config; otherwise
36 dnl use ../yaz if is a directory (internal development); otherwise
37 dnl use yaz-config found in PATH.
38 yazconfig=NONE
39 yazpath=NONE
40 AC_ARG_WITH(yazconfig, [  --with-yazconfig=DIR    yaz-config in DIR (example /home/yaz-1.5)], [yazpath=$withval])
41 if test "x$yazpath" != "xNONE"; then
42         yazconfig=$yazpath/yaz-config
43 else
44         for i in ../yaz* ../yaz; do
45                 if test -d $i; then
46                         if test -r $i/yaz-config; then
47                                 yazconfig=$i/yaz-config
48                         fi
49                 fi
50         done
51         if test "x$yazconfig" = "xNONE"; then
52                 AC_PATH_PROG(yazconfig, yaz-config, NONE)
53         fi
54 fi
55 AC_MSG_CHECKING(for YAZ)
56 if test -r $yazconfig; then
57         . $yazconfig
58         AC_MSG_RESULT($yazconfig)
59 else
60         AC_MSG_RESULT(Not found)
61 fi
62 dnl
63 dnl ------ Threads
64 AC_ARG_ENABLE(threads, [  --disable-threads       disable threads],[enable_threads=$enableval],[enable_threads=yes])
65 if test "$enable_threads" = "yes"; then
66         AC_CHECK_LIB(pthread,main)
67         AC_MSG_CHECKING(for working POSIX Threads)
68         AC_TRY_LINK([#include <pthread.h>
69         int func(void *p) { return 0; }
70         ],[
71         pthread_t pthread_id;
72         int r = pthread_create (&pthread_id, 0, func, 0);],
73                 thread_ok=yes,thread_ok=no)
74         if test "$thread_ok" = "yes"; then
75                 AC_MSG_RESULT(yes)
76                 AC_DEFINE(HAVE_PTHREAD_H)
77                 AC_DEFINE(_REENTRANT)
78         else
79                 AC_MSG_RESULT(no)
80         fi
81 fi
82 dnl
83 dnl ------ Look for Tcl
84 dnl See if user has specified location of tclConfig.sh; otherwise
85 dnl see if tclConfig.sh exists in same prefix lcoation as tclsh; otherwise
86 dnl disable Tcl.
87 TCL_LIB=""
88 TCL_INCLUDE=""
89 tclconfig=NONE
90 AC_ARG_WITH(tclconfig, [  --with-tclconfig=DIR    tclConfig.sh in DIR], [tclconfig=$withval])
91 if test "x$tclconfig" = xNONE; then
92         saveprefix=${prefix}
93         AC_PREFIX_PROGRAM(tclsh)
94         tclconfig=${prefix}/lib
95         prefix=${saveprefix}
96 fi
97 AC_MSG_CHECKING(for Tcl)
98 if test -r ${tclconfig}/tclConfig.sh; then
99         . ${tclconfig}/tclConfig.sh
100         if test -r ${tclconfig}/../generic/tcl.h; then
101                 TCL_INCLUDE=-I${tclconfig}/../generic
102                 TCL_LIB="$TCL_BUILD_LIB_SPEC $TCL_LIBS"
103         else
104                 TCL_INCLUDE=-I${TCL_PREFIX}/include
105                 TCL_LIB="$TCL_LIB_SPEC $TCL_LIBS"
106         fi
107         SHLIB_CFLAGS=$TCL_SHLIB_CFLAGS
108         SHLIB_LD=$TCL_SHLIB_LD
109         SHLIB_SUFFIX=$TCL_SHLIB_SUFFIX
110         SHLIB_VERSION=$TCL_SHLIB_VERSION
111         AC_MSG_RESULT($TCL_VERSION)
112         ODEFS="-DHAVE_TCL_H=1"
113 else
114         AC_MSG_RESULT(Not found)
115         ODEFS="-DHAVE_TCL_H=0"
116 fi
117 dnl
118 dnl ------ times
119 AC_CHECK_HEADERS(sys/times.h)
120 dnl
121 dnl ------- BZIP2
122 AC_CHECK_LIB(bz2,bzCompressInit)
123 if test "$ac_cv_lib_bz2_bzCompressInit" = "yes"; then
124         AC_CHECK_HEADERS(bzlib.h)
125 fi
126 dnl
127 dnl ------ ANSI C Header files
128 AC_STDC_HEADERS
129 if test "$ac_cv_header_stdc" = "no"; then
130         AC_MSG_WARN(Your system doesn't seem to support ANSI C)
131 fi
132 dnl
133 dnl ------ Is it Zebra or Z'mbol
134 if test -r LICENSE.zmbol; then
135         AC_DEFINE(ZMBOL,1)
136         PROGPREFIX=zmbol
137         SUBDIR="util bfile dfa dict isams isamc isam rset recctrl index"
138         SUBMAKE="Makefile util/Makefile bfile/Makefile dfa/Makefile dict/Makefile isams/Makefile isamc/Makefile isam/Makefile rset/Makefile recctrl/Makefile index/Makefile"
139         SUBLIBS="../lib/rset.a ../lib/dict.a ../lib/isams.a ../lib/isam.a\
140  ../lib/recctrl.a ../lib/isamc.a ../lib/bfile.a ../lib/dfa.a\
141  ../lib/zebrautl.a"
142 else
143         PROGPREFIX=zebra
144         SUBDIR="util bfile dfa dict isams rset recctrl index"
145         SUBMAKE="Makefile util/Makefile bfile/Makefile dfa/Makefile dict/Makefile isams/Makefile rset/Makefile recctrl/Makefile index/Makefile"
146         SUBLIBS="../lib/rset.a ../lib/dict.a ../lib/isams.a\
147  ../lib/recctrl.a ../lib/bfile.a ../lib/dfa.a\
148  ../lib/zebrautl.a"
149         AC_DEFINE(ZMBOL,0)
150 fi
151 dnl
152 dnl ------ Create Makefiles
153 AC_OUTPUT($SUBMAKE)