1dnl Process this file with autoconf to produce a configure script.
2AC_INIT(TODO)
3AC_CANONICAL_SYSTEM
4dnl AM_INIT_AUTOMAKE(mnogosearch, 3.2.33-`date "+%Y%m%d"`)
5AM_INIT_AUTOMAKE(mnogosearch, 3.4.1)
6AM_MAINTAINER_MODE
7AC_CONFIG_HEADERS(include/udm_autoconf.h)
8AC_PROG_MAKE_SET
9
10# Set all version vars based on $VERSION. How do we do this more elegant ?
11# Remember that regexps needs to quote [ and ] since this is run through m4
12UDM_TRIM_VERSION=`echo $VERSION | sed -e "s|\.*pre[[0-9]]*$||"`
13UDM_TRIM_VERSION=`echo $UDM_TRIM_VERSION | sed -e "s|\.*-[[0-9]]*$||"`
14UDM_BASE_VERSION=`echo $UDM_TRIM_VERSION | sed -e "s|\.[[^.]]*$||" | sed -e "s|^\(.\)\.\(.\)$|\\1\.0\\2|" | sed -e "s|\.||g"`
15UDM_TAIL_VERSION=`echo $UDM_TRIM_VERSION | sed -e "s|^[[0-9]]\.[[0-9]]*\.||" | sed -e "s|^\(.\)$|0\\1|"`
16UDM_VERSION_ID=${UDM_BASE_VERSION}${UDM_TAIL_VERSION}
17
18AC_DEFINE_UNQUOTED([UDM_VERSION_ID], [$UDM_VERSION_ID], [Define VERSION_ID])
19AC_SUBST(UDM_VERSION_ID)
20
21dnl Installation prefix by default
22AC_PREFIX_DEFAULT(/usr/local/mnogosearch)
23
24dnl Check if build env is sane
25AM_SANITY_CHECK
26
27dnl Check for programs.
28AC_PROG_CC
29AC_PROG_INSTALL
30
31dnl Enable shared libs by default (to disable - place AM_DISABLE_SHARED)
32AM_PROG_LIBTOOL
33AC_SUBST(LIBTOOL_DEPS)
34
35AC_PATH_PROG(RM, rm, rm)
36
37dnl Check if we are little or big endian
38AC_C_BIGENDIAN
39
40dnl OS specific flags and options
41dnl ARM has unsigned char by default, force signed char.
42case "$host" in
43        *-*-irix*)
44            CFLAGS="$CFLAGS -D_BSD_COMPAT"
45            LDADD="$LDADD -lbsd"
46            ;;
47        armv7l-*)
48            CFLAGS="$CFLAGS -fsigned-char"
49            ;;
50esac
51
52dnl Checks for header files.
53AC_STDC_HEADERS
54AC_CHECK_HEADERS(sys/types.h fcntl.h unistd.h sys/cdefs.h libutil.h \
55sys/ioctl.h sys/time.h sys/times.h sys/param.h sys/wait.h locale.h \
56getopt.h syslog.h select.h sys/select.h sys/socket.h arpa/inet.h netdb.h \
57netinet/in.h netinet/in_systm.h netinet/tcp.h arpa/nameser.h sys/ipc.h)
58
59AC_CHECK_HEADERS(netinet/ip.h resolv.h,,,
60[
61#if HAVE_SYS_TYPES_H
62#include <sys/types.h>
63#endif
64#if HAVE_NETINET_IN_SYSTM_H
65#include <netinet/in_systm.h>
66#endif
67#if HAVE_NETINET_IN_H
68#include <netinet/in.h>
69#endif
70]
71)
72
73dnl Checks for typedefs, structures, and compiler characteristics.
74AC_C_CONST
75AC_C_INLINE
76AC_TYPE_MODE_T
77AC_TYPE_OFF_T
78AC_TYPE_PID_T
79AC_TYPE_SIZE_T
80# Check if we have socklen_t
81AC_CACHE_CHECK([for socklen_t], ac_cv_have_socklen_t,
82AC_TRY_COMPILE(
83[#include <sys/types.h>
84#include <sys/socket.h>],
85[socklen_t s;],
86ac_cv_have_socklen_t=yes, ac_cv_have_socklen_t=no))
87
88if test "$ac_cv_have_socklen_t" = "no"
89then
90  AC_DEFINE([socklen_t], [int], [Define if you havnt socklen_t type])
91fi
92
93
94dnl Check for tm_gmtoff in struct tm
95AC_MSG_CHECKING(for tm_gmtoff in struct tm)
96AC_TRY_COMPILE([#include <time.h>],
97[struct tm tm;
98tm.tm_gmtoff=0;
99],
100AC_DEFINE([HAVE_TM_GMTOFF], [1], [Define if you have tm_gmtoff in struct tm])
101AC_MSG_RESULT(yes),
102AC_MSG_RESULT(no))
103
104dnl Check for library functions
105AC_CHECK_FUNCS(strdup strndup strstr strnlen strcasecmp strncasecmp bzero strtok_r strcasestr timegm)
106AC_CHECK_FUNCS(regcomp socket vsnprintf snprintf mergesort setvbuf)
107AC_CHECK_FUNCS(setenv putenv, break)
108AC_CHECK_FUNCS(unsetenv atexit)
109AC_CHECK_FUNC(inet_addr, , AC_CHECK_LIB(xnet, inet_addr, LIBS="-lxnet $LIBS"))
110AC_CHECK_FUNC(setproctitle, , AC_CHECK_LIB(util, setproctitle, LIBS="-lutil $LIBS"))
111AC_CHECK_FUNC(sqrt, , AC_CHECK_LIB(m, sqrt, LIBS="$LIBS -lm"))
112
113dnl Check sizeof_type
114AC_CHECK_SIZEOF(char*)
115AC_CHECK_SIZEOF(int)
116AC_CHECK_SIZEOF(long)
117AC_CHECK_SIZEOF(long long)
118AC_CHECK_SIZEOF(short)
119
120dnl Check for libraries
121dnl Next line was commented out by Kir
122dnl Does inet_addr and inet_aton belongs to one lib?
123dnl If so we don't need to check for inet_aton
124dnl AC_CHECK_FUNCS(inet_addr inet_aton)
125AC_LIBRARY_NET
126
127dnl Determine signal handling standard
128AC_TYPE_SIGNAL
129AC_MSG_CHECKING(for POSIX signals)
130AC_TRY_LINK([#include <signal.h>],
131[   sigset_t ss;
132    struct sigaction sa;
133    sigemptyset(&ss); sigsuspend(&ss);
134    sigaction(SIGINT, &sa, (struct sigaction *) 0);
135    sigprocmask(SIG_BLOCK, &ss, (sigset_t *) 0);
136],
137    AC_DEFINE([HAVE_POSIX_SIGNALS], [1], [Define if you have POSIX type signal handling routines])
138    AC_MSG_RESULT(yes),
139    AC_MSG_RESULT(no))
140
141
142AC_MSG_CHECKING(for debug)
143AC_ARG_WITH(debug,
144    [  --without-debug         Build a production version without debugging code],
145    [with_debug=$withval],
146    [with_debug=no])
147if test "$with_debug" = "yes"
148then
149  AC_DEFINE([HAVE_DEBUG], [1], [Define if you want debugging code])
150  AC_MSG_RESULT(yes)
151else
152  # Optimized version. No debug
153  AC_MSG_RESULT(no)
154fi
155
156
157dnl check for better compatibility with the Filesystem Hierarchy Standard (FHS)
158AC_MSG_CHECKING(for directory layout)
159AC_ARG_ENABLE(fhs-layout,
160[  --disable-fhs-layout    Use legacy mnoGoSearch directory hierarhcy],
161[],
162[
163 # Enable FHS by default
164 enable_fhs_layout=yes
165])
166
167if test "$enable_fhs_layout" = "no"
168then
169  AC_MSG_RESULT(Legacy mnoGoSearch layout)
170  LANGMAPDIR="(sysconfdir)/langmap"
171  STOPWORDSDIR="(sysconfdir)/stopwords"
172  SYNONYMDIR="(sysconfdir)/synonym"
173  FREQDIR="(sysconfdir)"
174  CREATEDIR="(datadir)"
175else
176  AC_MSG_RESULT(Filesystem Hierarchy Standard)
177  LANGMAPDIR="(datadir)/langmap"
178  STOPWORDSDIR="(datadir)/stopwords"
179  SYNONYMDIR="(datadir)/synonym"
180  FREQDIR="(datadir)/freq"
181  CREATEDIR="(datadir)/create"
182  AC_DEFINE(HAVE_FHS_LAYOUT,[1],[Better FHS layout])
183fi
184
185AC_SUBST(LANGMAPDIR)
186AC_SUBST(STOPWORDSDIR)
187AC_SUBST(SYNONYMDIR)
188AC_SUBST(FREQDIR)
189AC_SUBST(CREATEDIR)
190
191
192dnl check for paranoia support
193paranoia=no
194AC_MSG_CHECKING(for paranoia support)
195AC_ARG_ENABLE(paranoia,
196[  --enable-paranoia       Enable paranoia support. Stack will be checked like with libparanoia
197                            This works only on Intel architecture using gcc. Optimization should be switched off.],
198[
199  if test "$withval" != "no"; then
200    AC_MSG_RESULT($withval)
201    AC_DEFINE([USE_PARANOIA], [1], [libparanoia usage])
202  else
203    AC_MSG_RESULT(no)
204  fi
205],[
206  AC_MSG_RESULT(no)
207])
208
209
210dnl check needs for -lc
211sharedmem=no
212cok=no
213if test "$sharedmem" = no; then
214	AC_MSG_CHECKING(for POSIX shared memory library)
215	AC_TRY_LINK([
216#include <sys/types.h>
217#include <sys/mman.h>
218],
219[
220 shm_open("/tmp", 0, 0644);
221], cok=yes
222   sharedmem=posix
223   AC_DEFINE([HAVE_SYS_MMAN_H], [1], [Define if you have the <sys/mman.h> header file.])
224   AC_MSG_RESULT(ok)
225)
226	if test "$cok" = no; then
227		ac_save_libs="$LIBS"
228		LIBS="$LIBS -lc"
229		AC_TRY_LINK([
230#include <sys/types.h>
231#include <sys/mman.h>
232],
233[
234 shm_open("/tmp", 0, 0644);
235], cok=yes
236   sharedmem=posix
237   AC_DEFINE([HAVE_SYS_MMAN_H], [1], [Define if you have the <sys/mman.h> header file.])
238   AC_MSG_RESULT(-lc),
239   LIBS="$ac_save_libs"
240)
241	fi
242	if test "$cok" = no; then
243		ac_save_libs="$LIBS"
244		LIBS="$LIBS -lrt"
245		AC_TRY_LINK([
246#include <sys/types.h>
247#include <sys/mman.h>
248],
249[
250 shm_open("/tmp", 0, 0644);
251], cok=yes
252   sharedmem=posix
253   AC_DEFINE([HAVE_SYS_MMAN_H], [1], [Define if you have the <sys/mman.h> header file.])
254   AC_MSG_RESULT(-lrt),
255   LIBS="$ac_save_libs"
256)
257	fi
258fi
259
260if test "$sharedmem" = no; then
261	AC_MSG_CHECKING(for SystemV shared memory library)
262	AC_TRY_LINK([
263#include <sys/types.h>
264#include <sys/shm.h>
265],
266[
267 shmat(1, 0, 0);
268],cok=yes
269  sharedmem=sysV
270  AC_DEFINE([HAVE_SYS_SHM_H], [1], [Define if you have the <sys/shm.h> header file.])
271  AC_MSG_RESULT(ok))
272	if test "$cok" = no; then
273		ac_save_libs="$LIBS"
274		LIBS="$LIBS -lc"
275		AC_TRY_LINK([
276#include <sys/types.h>
277#include <sys/shm.h>
278],
279[
280 shmat(1, 0, 0);
281],cok=yes
282  sharedmem=sysV
283  AC_DEFINE([HAVE_SYS_SHM_H], [1], [Define if you have the <sys/shm.h> header file.])
284  AC_MSG_RESULT(-lc),
285  LIBS="$ac_save_libs"
286)
287	fi
288	if test "$cok" = no; then
289		ac_save_libs="$LIBS"
290		LIBS="$LIBS -lrt"
291		AC_TRY_LINK([
292#include <sys/types.h>
293#include <sys/shm.h>
294],
295[
296 shmat(1, 0, 0);
297],cok=yes
298  sharedmem=sysV
299  AC_DEFINE([HAVE_SYS_SHM_H], [1], [Define if you have the <sys/shm.h> header file.])
300  AC_MSG_RESULT(-lrt),
301  LIBS="$ac_save_libs"
302)
303	fi
304fi
305
306if test "$sharedmem" = no; then
307	AC_MSG_ERROR([No shared memory support found])
308fi
309
310
311syslog=yes
312AC_MSG_CHECKING(for syslog support)
313AC_ARG_ENABLE(syslog,
314[How to log messages:
315  --enable-syslog         Use syslog (default)
316  --enable-syslog=LOG_FACILITY
317                          Use syslog facility LOG_FACILITY, which should be
318			  valid name defined in /usr/include/sys/syslog.h
319  --disable-syslog        Use stdout/stderr]
320,
321syslog=$enableval)
322
323if test "$syslog" != no; then
324    AC_DEFINE([USE_SYSLOG], [1], [Define if you want to use syslog for logging indexer messages])
325    if test "$syslog" != yes; then
326	AC_DEFINE_UNQUOTED(LOG_FACILITY, $syslog, syslog facility)
327	AC_TRY_RUN([
328	    #include <sys/syslog.h>
329	    int main(void){
330	    openlog("Test", LOG_NDELAY, LOG_FACILITY);
331	    closelog();
332	    return 0;
333	}
334	],
335	AC_MSG_RESULT([enabled (will use $syslog facility)]),
336	[
337	AC_MSG_RESULT(error)
338	echo "You probably gave wrong facility argument ($syslog)"
339	echo "to --enable-syslog. This argument should be one defined in"
340	echo "/usr/include/sys/syslog.h, for example LOG_DAEMON or LOG_LOCAL7."
341	AC_MSG_ERROR([** Unknown syslog facility given **])
342	],
343	[echo $ac_n "cross compiling; assumed OK... $ac_c"]
344	)
345    else
346	AC_MSG_RESULT(enabled)
347    fi
348else
349    AC_MSG_RESULT([disabled (will use stdout/stderr)])
350fi
351
352trace=no
353AC_MSG_CHECKING(for tracing support)
354AC_ARG_ENABLE(trace,
355[  --enable-trace          Use tracing (for debug purpose, disabled by default)]
356,
357trace=$enableval)
358
359if test "$trace" != no; then
360	AC_DEFINE([USE_TRACE], [1], [Define if you want tracing for debugging])
361	AC_MSG_RESULT(enabled)
362else
363	AC_MSG_RESULT(disable)
364fi
365
366
367dnl Hack to build statically linked binary distributions
368STATIC_LFLAGS=""
369static_lflags=no
370AC_MSG_CHECKING(for -all-static linker flags)
371AC_ARG_ENABLE(all-static,
372[  --enable-all-static     build statically linked binaries],static_lflags=$enableval)
373if test "$static_lflags" != no; then
374	AC_MSG_RESULT(enabled)
375	STATIC_LFLAGS="-all-static"
376	LINKING="static"
377else
378	AC_MSG_RESULT([disabled])
379	LINKING="dynamic"
380fi
381AC_SUBST(STATIC_LFLAGS)
382AC_SUBST(LINKING)
383
384PTHREAD_CFLAGS=""
385PTHREAD_LFLAGS=""
386PTHREAD_LDADD=""
387
388pthreads=yes
389AC_MSG_CHECKING(for pthreads)
390AC_ARG_ENABLE(pthreads,
391[  --disable-pthreads      disable POSIX pthreads],pthreads=$enableval)
392
393if test "$pthreads" != no; then
394
395    case "$host" in
396        *-*-bsdi*)
397            PTHREAD_CFLAGS="-D_REENTRANT -D_THREAD_SAFE"
398            ;;
399        *-*-darwin*)
400            PTHREAD_CFLAGS="-D_THREAD_SAFE"
401# causes Carbon.p complaints?
402#           PTHREAD_CFLAGS="-D_REENTRANT -D_THREAD_SAFE"
403            ;;
404        *-*-freebsd*)
405            PTHREAD_CFLAGS="-D_REENTRANT -D_THREAD_SAFE"
406            PTHREAD_LFLAGS="-pthread"
407            ;;
408        *-*-netbsd*)
409            PTHREAD_CFLAGS="-I/usr/pkg/include -D_REENTRANT"
410            PTHREAD_LDADD="-L/usr/pkg/lib -lpthread -lsem"
411            ;;
412        *-*-openbsd*)
413            PTHREAD_CFLAGS="-D_REENTRANT"
414            PTHREAD_LFLAGS="-pthread"
415            ;;
416        *-*-solaris*)
417            PTHREAD_CFLAGS="-D_REENTRANT"
418            PTHREAD_LDADD="-lpthread -lposix4"
419            ;;
420        *-*-sysv5*)
421            PTHREAD_CFLAGS="-D_REENTRANT -Kthread"
422            PTHREAD_LDADD=""
423            ;;
424        *-*-irix*)
425            PTHREAD_CFLAGS="-D_SGI_MP_SOURCE -D_POSIX_C_SOURCE=199506L -D_XOPEN_SOURCE=500"
426            PTHREAD_LDADD="-lpthread"
427            ;;
428        *-*-aix*)
429#PTHREAD_CFLAGS="-D_REENTRANT -mthreads"
430            PTHREAD_CFLAGS="-D_REENTRANT -D_THREAD_SAFE"
431            PTHREAD_LDADD="-lpthread"
432            ;;
433        *-*-qnx*)
434            PTHREAD_CFLAGS=""
435            PTHREAD_LDADD=""
436            ;;
437        *)
438            PTHREAD_CFLAGS="-D_REENTRANT"
439            PTHREAD_LDADD="-lpthread"
440            ;;
441    esac
442
443    ac_save_libs="$LIBS"
444    LIBS="$LIBS $PTHREAD_LFLAGS $PTHREAD_LDADD"
445    CFLAGS="$PTHREAD_CFLAGS $CFLAGS"
446
447    AC_TRY_LINK([#include <pthread.h>],
448	[
449		pthread_attr_t type;
450		pthread_attr_init(&type);
451        ],AC_MSG_RESULT([yes]),
452          AC_MSG_ERROR([POSIX thread support not found])
453    )
454
455    LIBS="$ac_save_libs"
456    AC_DEFINE([HAVE_PTHREAD], [1], [Define if you want to use threaded indexer])
457
458else
459    AC_MSG_RESULT([disabled])
460fi
461
462
463AC_SUBST(PTHREAD_CFLAGS)
464AC_SUBST(PTHREAD_LFLAGS)
465AC_SUBST(PTHREAD_LDADD)
466
467
468if test "$pthreads" = yes ; then
469  _CFLAGS="$CFLAGS"
470  _LIBS="$LIBS"
471  CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
472  LIBS="$LIBS $PTHREAD_LFLAGS $PTHREAD_LDADD"
473
474  AC_MSG_CHECKING(for gethostbyname_r)
475
476  if test -z "$ac_cv_gethostbyname_args"; then
477    AC_TRY_LINK(
478[
479#include <sys/types.h>
480#include <netdb.h>
481],
482[
483struct hostent *hp;
484struct hostent h;
485char *name;
486char buffer[10];
487int  h_errno;
488hp= gethostbyname_r(name, &h, buffer, 10, &h_errno);
489], ac_cv_gethostbyname_args=5)
490  fi
491
492
493  if test -z "$ac_cv_gethostbyname_args"; then
494    AC_TRY_LINK(
495[
496#include <sys/types.h>
497#include <netdb.h>
498],
499[
500struct hostent h;
501struct hostent_data hdata;
502char *name;
503int  rc;
504rc= gethostbyname_r(name, &h, &hdata);
505], ac_cv_gethostbyname_args=3)
506  fi
507
508
509  if test -z "$ac_cv_gethostbyname_args"; then
510    AC_TRY_LINK(
511[
512#include <sys/types.h>
513#include <netdb.h>
514],
515[
516struct hostent h;
517struct hostent *hp;
518char *name;
519char buf[10];
520int rc;
521int h_errno;
522
523rc= gethostbyname_r(name, &h, buf, 10, &hp, &h_errno);
524], ac_cv_gethostbyname_args=6)
525  fi
526
527  if test -z "$ac_cv_gethostbyname_args"; then
528    AC_MSG_RESULT(no)
529  else
530    if test "$ac_cv_gethostbyname_args" = 3; then
531      AC_DEFINE([HAVE_GETHOSTBYNAME_R_3], [1], [Define if you have gethostbyname_r() with three arguments (AIX, HPUX, Tru64)])
532    elif test "$ac_cv_gethostbyname_args" = 5; then
533      AC_DEFINE([HAVE_GETHOSTBYNAME_R_5], [1], [Define if you have gethostbyname_r() with five arguments (Solaris, IRIX, QNX)])
534    elif test "$ac_cv_gethostbyname_args" = 6; then
535      AC_DEFINE([HAVE_GETHOSTBYNAME_R_6], [1], [Define if you have gethostbyname_r() with six arguments (Linux)])
536    fi
537    AC_MSG_RESULT([yes (with $ac_cv_gethostbyname_args arguments)])
538  fi
539
540  CFLAGS="$_CFLAGS"
541  LIBS="$_LIBS"
542fi
543
544
545parser=yes
546AC_MSG_CHECKING(for external parsers support)
547AC_ARG_ENABLE(parser,
548[  --disable-parser        disable external parsers support], parser=$enableval)
549
550if test "$parser" != no; then
551    AC_DEFINE([USE_PARSER], [1], [Define if you want to use external parser])
552    AC_MSG_RESULT(yes)
553else
554    AC_MSG_RESULT([no])
555fi
556
557
558mp3=yes
559AC_MSG_CHECKING(for MP3 ID3 tags support)
560AC_ARG_ENABLE(mp3,
561[  --disable-mp3           disable MP3 tags support ], mp3=$enableval)
562
563if test "$mp3" != no; then
564    AC_DEFINE([USE_MP3], [1], [Define if you want mp3 id3 tags support])
565    AC_MSG_RESULT(yes)
566else
567    AC_MSG_RESULT([no])
568fi
569
570
571file=yes
572AC_MSG_CHECKING(for file: URL schema support)
573AC_ARG_ENABLE(file,
574[  --disable-file          disable file:/ URL scheme support], file=$enableval)
575
576if test "$file" != no; then
577    AC_DEFINE([USE_FILE], [1], [Define if you want to support file:// URL schema])
578    AC_MSG_RESULT(yes)
579else
580    AC_MSG_RESULT([no])
581fi
582
583
584http=yes
585AC_MSG_CHECKING([for http: (and ftp: - via proxy) URL schema support])
586AC_ARG_ENABLE(http,
587[  --disable-http          disable http:// URL scheme support], http=$enableval)
588
589if test "$http" != no; then
590    AC_DEFINE([USE_HTTP], [1], [Define if you want to support http:// URL schema])
591    AC_MSG_RESULT(yes)
592else
593    AC_MSG_RESULT([no])
594fi
595
596
597ftp=yes
598AC_MSG_CHECKING(for ftp: URL schema support)
599AC_ARG_ENABLE(ftp,
600[  --disable-ftp           disable ftp:// URL scheme support], ftp=$enableval)
601
602if test "$ftp" != no; then
603    AC_DEFINE([USE_FTP], [1], [Define if you want to support ftp:// URL schema])
604    AC_MSG_RESULT(yes)
605else
606    AC_MSG_RESULT([no])
607fi
608
609
610
611
612news=yes
613AC_MSG_CHECKING(for news: URL schema support)
614AC_ARG_ENABLE(news,
615[  --disable-news          disable news:// URL schema support], news=$enableval)
616
617if test "$news" != no; then
618    AC_DEFINE([USE_NEWS], [1], [Define if you want to support news:// URL schema])
619    AC_MSG_RESULT(yes)
620else
621    AC_MSG_RESULT([no])
622fi
623
624
625efence=no
626AC_MSG_CHECKING(for Electricfence memory debugger support)
627AC_ARG_ENABLE(efence,
628[  --enable-efence         enable Electricfence memory debugger support],efence=$enableval)
629
630if test "$efence" != no; then
631	if test "$pthreads" != no; then
632		LIBS="$LIBS -L/usr/local/lib -lefence_r"
633	else
634		LIBS="$LIBS -L/usr/local/lib -lefence"
635	fi
636	AC_MSG_RESULT(yes)
637else
638	AC_MSG_RESULT([no])
639fi
640
641memdebug=no
642AC_MSG_CHECKING(for internal memory debugger support)
643AC_ARG_ENABLE(memdebug,
644[  --enable-memdebug       enable internal memory debugger support],memdebug=$enableval)
645
646if test "$memdebug" != no; then
647        AC_DEFINE([EFENCE], [1], [Define if you want internal memory debugger based on Electric Fence 2.2])
648        efOBJ="efence.o ef_page.o ef_print.o"
649        AC_MSG_RESULT(yes)
650else
651        AC_MSG_RESULT([no])
652fi
653AC_SUBST(efOBJ)
654
655
656dnl check for MySQL fulltext plugin support
657AC_MSG_CHECKING(for MySQL fulltext plugin support)
658AC_ARG_ENABLE(mysql-fulltext-plugin,
659[  --enable-mysql-fulltext-plugin  enable MySQL-5.1 fulltext plugin interface],
660[
661  if test "$enableval" != "no"; then
662    AC_MSG_RESULT(yes)
663    AC_DEFINE([HAVE_MYSQL_FULLTEXT_PLUGIN], [1], [MySQL fulltext plugin])
664  else
665    AC_MSG_RESULT(no)
666  fi
667],[
668  AC_MSG_RESULT(no)
669])
670
671
672# Shall we build the docs?
673AC_ARG_WITH(docs,
674    [  --with-docs             Build the documentation.],
675    [with_docs=$withval],
676    [with_docs=no]
677)
678
679if test "$with_docs" = "yes"
680then
681  # Check for DocBook and tools
682  PGAC_PROG_JADE
683  #PGAC_CHECK_DOCBOOK([4.1])
684  have_docbook=yes
685  PGAC_PATH_DOCBOOK_STYLESHEETS
686
687  if test "x$JADE" != "x" && test x$have_docbook != "xno" ; then
688    AC_MSG_CHECKING(for collateindex.pl)
689    for  ci_prefix in /usr/bin /usr/local/bin $DOCBOOKSTYLE/bin; do
690      ci_candidate=$ci_prefix/collateindex.pl
691      if test -f "$ci_candidate"
692      then
693        COLLATEINDEX=$ci_candidate
694        break
695      fi
696    done
697    AC_SUBST([COLLATEINDEX])
698    if test -n "$COLLATEINDEX"; then
699      AC_MSG_RESULT([$COLLATEINDEX])
700      doc_FILES="HTML_ALL"
701    else
702      AC_MSG_ERROR([Unable to find collateindex.pl])
703    fi
704#    if test -f $DOCBOOKSTYLE/bin/collateindex.pl; then
705#      doc_FILES="HTML_ALL"
706#    fi
707
708    AC_MSG_CHECKING(for docbook dtd catalog)
709    if test "$DOCBOOK_DTD" == ""
710    then
711      for dtd_prefix in \
712        /usr/share/sgml/docbook/dtd/4.2*/ \
713        /usr/share/sgml/docbook/xml-dtd-4.2*/ \
714        /usr/local/share/xml/docbook/4.2*/ \
715        /usr/share/xml/docbook/dtd/4.2*/ \
716        /usr/share/xml/docbook/schema/dtd/4.2*/ \
717        /usr/local/share/xml/docbook/
718      do
719        dtd_candidate=$dtd_prefix/catalog
720        if test -r "$dtd_candidate"
721        then
722          DOCBOOK_DTD=$dtd_candidate
723          break
724        fi
725      done
726    fi
727    AC_SUBST([DOCBOOK_DTD])
728    if test -n "$DOCBOOK_DTD"; then
729      AC_MSG_RESULT([$DOCBOOK_DTD])
730    else
731      AC_MSG_RESULT(no)
732    fi
733
734  fi
735else
736  doc_FILES="HTML_ALL_NOJADE"
737fi
738AC_SUBST(doc_FILES)
739
740
741
742
743AC_MSG_CHECKING(for Openssl support)
744AC_ARG_WITH(openssl,
745[  --with-openssl[=DIR]      Include Openssl support.  DIR is the Openssl
746                          base install directory, defaults to /usr/local/ssl.],
747[
748  if test "$withval" != "no"; then
749        if test "$withval" = "yes"; then
750                if test -f /usr/include/openssl/ssl.h; then
751                        SSL_INCDIR=/usr/include
752                else
753                        SSL_INCDIR=/usr/local/ssl/include
754                fi
755                if test -f /usr/lib/libssl.a; then
756                        SSL_LIBDIR=/usr/lib
757                else
758                        SSL_LIBDIR=/usr/local/ssl/lib
759                fi
760        else
761                SSL_INCDIR=$withval/include
762                test -d $withval/include/openssl && SSL_INCDIR=$withval/include
763                SSL_LIBDIR=$withval/lib
764        fi
765    SSL_INCLUDE="-I$SSL_INCDIR"
766    SSL_LFLAGS="-L$SSL_LIBDIR -lssl -lcrypto"
767    # On RedHat 9 we need kerberos to compile openssl
768    for d in /usr/kerberos/include
769    do
770      if test -f $d/krb5.h; then
771        SSL_INCLUDE="-I$d $SSL_INCLUDE"
772      fi
773    done
774    AC_MSG_RESULT(yes)
775    AC_DEFINE([USE_HTTPS], [1], [Define if you want to support https:// URL schema])
776  else
777    AC_MSG_RESULT(no)
778  fi
779],[
780  AC_MSG_RESULT(no)
781])
782
783AC_SUBST(SSL_INCLUDE)
784AC_SUBST(SSL_LFLAGS)
785
786
787AC_MSG_CHECKING(for DMALLOC memory debugger support)
788AC_ARG_WITH(dmalloc,
789[  --with-dmalloc          enable DMALLOC memory debugger support],
790[
791if test "$withval" != "no"; then
792  if test "$withval" = "yes" ; then
793    if test -f /usr/include/dmalloc.h; then
794      withval="/usr"
795      AC_MSG_RESULT([$withval])
796    elif test -f /usr/local/include/dmalloc.h; then
797      withval="/usr/local"
798      AC_MSG_RESULT([$withval])
799    else
800      AC_MSG_RESULT([no])
801      AC_MSG_ERROR([Unknown dmalloc directory - unable to find dmalloc.h])
802    fi
803  fi
804
805  if test "$pthreads" != no; then
806    dmalloc_libname="dmallocth"
807  else
808    dmalloc_libname="dmalloc"
809  fi
810
811  CFLAGS="$CFLAGS -I$withval/include"
812  LIBS="$LIBS -L$withval/lib -l$dmalloc_libname"
813  AC_CHECK_LIB($dmalloc_libname, dmalloc_shutdown,
814               AC_DEFINE([DMALLOC], [1], [ Define if you want DMALLOC]),
815               AC_MSG_ERROR([Unable to find working dmalloc library under $withval/lib]))
816else
817  AC_MSG_RESULT([no])
818fi
819],
820[
821  AC_MSG_RESULT([no])
822])
823
824
825
826AC_MSG_CHECKING(for zlib for HTTP Content-Encoding support)
827AC_ARG_WITH(zlib,
828[  --with-zlib             for HTTP Content-Encoding support],
829[zlib=$withval],
830[zlib=yes])
831
832AC_MSG_RESULT([$zlib])
833
834if test "$zlib" = "no" ; then
835  dnl to avoid bash error
836  x=$x
837elif test "$zlib" = "yes" ; then
838  AC_CHECK_LIB(z, inflate, AC_DEFINE([HAVE_ZLIB], [1], [Define if you want HTTP Content Encoding support]) LIBS="$LIBS -lz",
839	LIBS_save="$LIBS"
840	LIBS="$LIBS /usr/local/lib"
841	AC_CHECK_LIB(z,inflate,AC_DEFINE([HAVE_ZLIB], [1], [ Define if you want HTTP Content Encoding support]) LIBS="$LIBS -lz",
842		LIBS="$LIBS_save"
843		AC_MSG_ERROR([Unable to find working zlib library])
844		)
845	)
846else
847  ZLIB_INCDIR="$zlib/include"
848  ZLIB_LIBDIR="$zlib/lib"
849  CFLAGS="-I$zlib/include $CFLAGS"
850  LIBS="$LIBS -L$zlib/lib -lz"
851  AC_CHECK_LIB(z,inflate,AC_DEFINE([HAVE_ZLIB], [1], [ Define if you want HTTP Content Encoding support]),AC_MSG_ERROR([Unable to find working zlib library under $zlib]))
852fi
853
854
855AC_MSG_CHECKING(for readline support)
856AC_ARG_WITH(readline,
857[  --with-readline         enable readline support for SQL monitor],
858[
859  AC_DEFINE([HAVE_READLINE], [1], [Define if you want readline support])
860  AC_MSG_RESULT(yes)
861  AC_CHECK_FUNC(tgetnum, ,
862    AC_CHECK_LIB(tinfo,  tgetnum, READLINE_LDADD="-ltinfo",
863    AC_CHECK_LIB(ncurses,tgetnum, READLINE_LDADD="-lncurses",
864    AC_CHECK_LIB(termcap,tgetnum, READLINE_LDADD="-ltermcap",
865    AC_MSG_ERROR([Unable to find tgetnum needed for readline])))))
866  READLINE_LDADD="-lreadline $READLINE_LDADD"
867],
868[
869  REALINE_LDADD=""
870  AC_MSG_RESULT([no])
871]
872)
873AC_SUBST(READLINE_LDADD)
874
875
876ADDCHARSETS=""
877AC_MSG_CHECKING(for chasen)
878AC_ARG_WITH(chasen,
879[  --with-chasen           enable chasen Japanese morphological system support],
880[
881  AC_DEFINE([CHASEN], [1], [Define if you want chasen support])
882  if test "$withval" = "yes"; then
883    dd="/usr /usr/local"
884  else
885    dd="$withval"
886  fi
887
888  for d in $dd; do
889    if test -f $d/include/chasen.h; then
890      path=$d
891      break
892    fi
893  done
894
895  if test "$path" = ""; then
896    AC_MSG_RESULT(no)
897    AC_MSG_ERROR(Invalid chasen directory - unable to find chasen.h)
898  fi
899
900  AC_MSG_RESULT($path)
901  CHASEN_INCLUDE="-I$path/include"
902  CHASEN_LFLAGS="-L$path/lib -lstdc++ -lchasen"
903  AC_DEFINE([HAVE_CHARSET_japanese], [1], [Define if you want Japanese support])
904  ADDCHARSETS="japanese"
905],
906[AC_MSG_RESULT([no])]
907)
908AC_SUBST(CHASEN_INCLUDE)
909AC_SUBST(CHASEN_LFLAGS)
910
911AC_MSG_CHECKING(for mecab)
912AC_ARG_WITH(mecab,
913[  --with-mecab            enable mecab Japanese morphological system support],
914[
915  AC_DEFINE([MECAB], [1], [Define if you want mecab support])
916  if test "$withval" = "yes"; then
917    dd="/usr /usr/local"
918  else
919    dd="$withval"
920  fi
921
922  for d in $dd; do
923    if test -f $d/include/mecab.h; then
924      path=$d
925      break
926    fi
927  done
928
929  if test "$path" = ""; then
930    AC_MSG_RESULT(no)
931    AC_MSG_ERROR(Invalid mecab directory - unable to find mecab.h)
932  fi
933
934  AC_MSG_RESULT($path)
935  LIBS="$LIBS -L$path/lib -lstdc++ -lmecab"
936  CFLAGS="$CFLAGS -I$path/include"
937  AC_DEFINE([HAVE_CHARSET_japanese], [1], [Define if you want Japanese support])
938  ADDCHARSETS="japanese"
939],
940[AC_MSG_RESULT([no])]
941)
942
943
944
945dnl Check for some DBMS backend
946dnl NOTE: we can use several different backend at the same time
947
948have_db=no
949DBTYPE=
950
951AC_MSG_CHECKING(for MySQL support)
952AC_ARG_WITH(mysql,
953[
954What DBMS support do you want (you may select several):
955  --with-mysql[=DIR]      Include MySQL support.  DIR is the MySQL base
956                          install directory, default is to search through
957                          a number of common places for the MySQL files.],
958[
959  if test "$withval" != "no"; then
960  	if test "$withval" = "yes"; then
961		if test -f /usr/include/mysql/mysql.h; then
962			MYSQL_INCDIR=/usr/include/mysql
963			MYSQL_LIBDIR=/usr/lib/mysql
964			withval="/usr"
965		elif test -f /usr/local/mysql/include/mysql/mysql.h; then
966			MYSQL_INCDIR=/usr/local/mysql/include/mysql
967			MYSQL_LIBDIR=/usr/local/mysql/lib/mysql
968			withval="/usr/local/mysql"
969		elif test -f /usr/local/mysql/include/mysql.h; then
970			MYSQL_INCDIR=/usr/local/mysql/include/
971			MYSQL_LIBDIR=/usr/local/mysql/lib/
972			withval="/usr/local/mysql"
973		elif test -f /usr/include/mysql.h; then
974			MYSQL_INCDIR=/usr/include
975			MYSQL_LIBDIR=/usr/lib
976			withval="/usr"
977		elif test -f /usr/local/include/mysql/mysql.h; then
978			MYSQL_INCDIR=/usr/local/include/mysql
979			MYSQL_LIBDIR=/usr/local/lib/mysql
980			withval="/usr/local"
981		elif test -f /usr/local/include/mysql.h; then
982			MYSQL_INCDIR=/usr/local/include
983			MYSQL_LIBDIR=/usr/local/lib
984			withval="/usr/local"
985		elif test -f /opt/local/include/mysql55/mysql/mysql.h; then
986			dnl OS X Lion
987			MYSQL_INCDIR=/opt/local/include/mysql55/mysql/
988			MYSQL_LIBDIR=/opt/local/lib/mysql55/mysql/
989			withval="/opt/local"
990		elif test -f /Library/MySQL/include/mysql/mysql.h; then
991			MYSQL_INCDIR=/Library/MySQL/include/mysql
992			MYSQL_LIBDIR=/Library/MySQL/lib/mysql
993			withval="/Library/MySQL"
994		else
995			AC_MSG_RESULT(no)
996			AC_MSG_ERROR(Unknown MySQL directory - unable to find mysql.h)
997		fi
998   	else
999		if test -f $withval/include/mysql/mysql.h; then
1000   			MYSQL_INCDIR=$withval/include/mysql
1001   			MYSQL_LIBDIR=$withval/lib/mysql
1002		elif test -f $withval/include/mysql.h; then
1003   			MYSQL_INCDIR=$withval/include
1004   			MYSQL_LIBDIR=$withval/lib
1005		else
1006			AC_MSG_RESULT(no)
1007			AC_MSG_ERROR(Invalid MySQL directory - unable to find mysql.h under $withval)
1008		fi
1009   	fi
1010    if test -f $withval/lib64/mysql/libmysqlclient.so; then
1011	MYSQL_LIBDIR=$withval/lib64/mysql
1012    fi
1013    MYSQL_INCLUDE="-I$MYSQL_INCDIR"
1014    MYSQL_LFLAGS="-L$MYSQL_LIBDIR -lmysqlclient"
1015
1016    AC_DEFINE([HAVE_MYSQL], [1], [Define if you want to use MySQL])
1017    AC_MSG_RESULT($withval)
1018    have_db=yes
1019    dnl MySQL requires -lm sometime
1020    AC_CHECK_FUNC(floor, , AC_CHECK_LIB(m, floor, MYSQL_LFLAGS="$MYSQL_LFLAGS -lm"))
1021    dnl MySQL 3.23 requires -lz sometime
1022    AC_CHECK_FUNC(compress, , AC_CHECK_LIB(z, compress, MYSQL_LFLAGS="$MYSQL_LFLAGS -lz"))
1023    AC_CHECK_LIB(dl, dlopen, MYSQL_LFLAGS="$MYSQL_LFLAGS -ldl")
1024    if test "x$DBTYPE" = "x" ; then
1025       DBTYPE="mysql"
1026    else
1027       DBTYPE="$DBTYPE-mysql"
1028    fi
1029
1030  else
1031  	AC_MSG_RESULT(no)
1032  fi
1033],[
1034  AC_MSG_RESULT(no)
1035])
1036AC_SUBST(MYSQL_LFLAGS)
1037AC_SUBST(MYSQL_INCLUDE)
1038
1039
1040AC_MSG_CHECKING(for PostgreSQL support)
1041AC_ARG_WITH(pgsql,
1042[  --with-pgsql[=DIR]      Include PostgreSQL support.  DIR is the PostgreSQL
1043                          base install directory, defaults to /usr/local/pgsql.],
1044[
1045  if test "$withval" != "no"; then
1046  	if test "$withval" = "yes"; then
1047		PGSQL_INCDIR=/usr/local/include/pgsql
1048		test -f /usr/include/pgsql/libpq-fe.h && PGSQL_INCDIR=/usr/include/pgsql
1049		test -f /usr/local/pgsql/include/libpq-fe.h && PGSQL_INCDIR=/usr/local/pgsql/include
1050		test -f /usr/include/postgresql/libpq-fe.h && PGSQL_INCDIR=/usr/include/postgresql
1051                test -f /usr/local/include/postgresql/libpq-fe.h && PGSQL_INCDIR=/usr/local/include/postgresql
1052		test -f /usr/local/include/libpq-fe.h && PGSQL_INCDIR=/usr/local/include
1053		PGSQL_LIBDIR=/usr/local/lib
1054		test -f /usr/lib/libpq.a && PGSQL_LIBDIR=/usr/lib
1055		test -f /usr/local/pgsql/lib/libpq.a && PGSQL_LIBDIR=/usr/local/pgsql/lib
1056   	else
1057   		PGSQL_INCDIR=$withval/include
1058   		test -d $withval/include/pgsql && PGSQL_INCDIR=$withval/include/pgsql
1059   		PGSQL_LIBDIR=$withval/lib
1060   		test -d $withval/lib/pgsql && PGSQL_LIBDIR=$withval/lib/pgsql
1061   	fi
1062    PGSQL_INCLUDE="-I$PGSQL_INCDIR"
1063    PGSQL_LFLAGS="-L$PGSQL_LIBDIR -lpq"
1064    AC_DEFINE([HAVE_PGSQL], [1], [Define if you want to use PostgreSQL])
1065    AC_MSG_RESULT(yes)
1066    have_db=yes
1067
1068    AC_CHECK_FUNC(crypt, , AC_CHECK_LIB(crypt, crypt, PGSQL_LFLAGS="$PGSQL_LFLAGS -lcrypt"))
1069
1070    if test "x$DBTYPE" = "x" ; then
1071       DBTYPE="pqsql"
1072    else
1073       DBTYPE="$DBTYPE-pqsql"
1074    fi
1075
1076  else
1077    AC_MSG_RESULT(no)
1078  fi
1079],[
1080  AC_MSG_RESULT(no)
1081])
1082AC_SUBST(PGSQL_LFLAGS)
1083AC_SUBST(PGSQL_INCLUDE)
1084
1085
1086
1087AC_MSG_CHECKING(for iODBC support)
1088AC_ARG_WITH(iodbc,
1089[  --with-iodbc[=DIR]      Include iODBC support.  DIR is the iODBC base
1090                          install directory, defaults to /usr/local.],
1091[
1092	if test "$withval" = "yes"; then
1093		withval=/usr/local
1094	fi
1095
1096	if test "$withval" != "no"; then
1097		if test -f $withval/include/isql.h; then
1098			IODBC_INCDIR=$withval/include
1099			IODBC_LIBDIR=$withval/lib
1100		else
1101    			AC_MSG_RESULT(no)
1102			AC_MSG_ERROR(Invalid iODBC directory - unable to find isql.h)
1103		fi
1104		IODBC_LFLAGS="-L$IODBC_LIBDIR -liodbc"
1105		IODBC_INCLUDE="-I$IODBC_INCDIR"
1106		AC_DEFINE([HAVE_IODBC], [1], [Define if you want to use iODBC])
1107		AC_MSG_RESULT(yes)
1108		have_db=yes
1109		if test "x$DBTYPE" = "x" ; then
1110			DBTYPE="iODBC"
1111		else
1112			DBTYPE="$DBTYPE-iODBC"
1113		fi
1114	fi
1115],[
1116	AC_MSG_RESULT(no)
1117])
1118AC_SUBST(IODBC_LFLAGS)
1119AC_SUBST(IODBC_INCLUDE)
1120
1121
1122AC_MSG_CHECKING(for unixODBC support)
1123AC_ARG_WITH(unixODBC,
1124[  --with-unixODBC[=DIR]   Include unixODBC support.  DIR is the unixODBC base
1125                          install directory, defaults to /usr/local.],
1126[
1127
1128if test "$withval" != "no"; then
1129	if test "$withval" = "yes"; then
1130		if test -f /usr/include/sql.h; then
1131			UNIXODBC_INCDIR=/usr/include
1132			UNIXODBC_LIBDIR=/usr/lib
1133			withval="/usr"
1134		elif test -f /usr/local/include/sql.h; then
1135			UNIXODBC_INCDIR=/usr/local/include
1136			UNIXODBC_LIBDIR=/usr/local/lib
1137			withval="/usr/local"
1138		else
1139			AC_MSG_RESULT(no)
1140			AC_MSG_ERROR(Unknown unixODBC directory - unable to find sql.h)
1141		fi
1142	else
1143		if test -f $withval/include/sql.h; then
1144			UNIXODBC_INCDIR=$withval/include
1145			UNIXODBC_LIBDIR=$withval/lib
1146		else
1147    			AC_MSG_RESULT(no)
1148			AC_MSG_ERROR(Invalid unixODBC directory - unable to find sql.h)
1149		fi
1150	fi
1151	have_db=yes
1152	UNIXODBC_LFLAGS="-L$UNIXODBC_LIBDIR -lodbc"
1153	UNIXODBC_INCLUDE="-I$UNIXODBC_INCDIR"
1154	AC_DEFINE([HAVE_UNIXODBC], [1], [Define if you want to use unixODBC])
1155	AC_MSG_RESULT($withval)
1156	if test "x$DBTYPE" = "x" ; then
1157		DBTYPE="unixODBC"
1158	else
1159		DBTYPE="$DBTYPE-unixODBC"
1160	fi
1161fi
1162
1163],[
1164	AC_MSG_RESULT(no)
1165])
1166AC_SUBST(UNIXODBC_LFLAGS)
1167AC_SUBST(UNIXODBC_INCLUDE)
1168
1169AC_MSG_CHECKING(for IBM DB2 support)
1170AC_ARG_WITH(db2,
1171[  --with-db2[=DIR]        Include db2 support.  DIR is the DB2 base
1172                          install directory, defaults to /home/db2],
1173[
1174	if test "$withval" = "yes"; then
1175		withval=/usr/local
1176	fi
1177
1178	if test "$withval" != "no"; then
1179		if test -f $withval/include/sqlcli1.h; then
1180			DB2_INCDIR=$withval/include
1181			DB2_LIBDIR=$withval/lib
1182		else
1183    			AC_MSG_RESULT(no)
1184			AC_MSG_ERROR(Invalid DB2 directory - unable to find sqlcli1.h)
1185		fi
1186		DB2_LFLAGS="-L$DB2_LIBDIR -ldb2"
1187		DB2_INCLUDE="-I$DB2_INCDIR"
1188		AC_DEFINE([HAVE_DB2], [1], [Define if you want to use IBM DB2])
1189		AC_MSG_RESULT(yes)
1190		have_db=yes
1191	fi
1192    if test "x$DBTYPE" = "x" ; then
1193       DBTYPE="DB2"
1194    else
1195       DBTYPE="$DBTYPE-DB2"
1196    fi
1197
1198],[
1199	AC_MSG_RESULT(no)
1200])
1201AC_SUBST(DB2_LFLAGS)
1202AC_SUBST(DB2_INCLUDE)
1203
1204
1205AC_MSG_CHECKING(for OpenLink ODBC support)
1206AC_ARG_WITH(openlink,
1207[  --with-openlink[=DIR]   Include OpenLink ODBC support.
1208                          DIR is the base OpenLink ODBC install directory],
1209[
1210  if test "$withval" != "no"; then
1211  	if test "$withval" = "yes"; then
1212
1213		if test -f /usr/local/virtuoso-ent/odbcsdk/include/isql.h; then
1214			VIRT_INCDIR=/usr/local/virtuoso-ent/odbcsdk/include/
1215			VIRT_LIBDIR=/usr/local/virtuoso-ent/odbcsdk/lib/
1216		elif test -f /usr/local/virtuoso-lite/odbcsdk/include/isql.h; then
1217			VIRT_INCDIR=/usr/local/virtuoso-lite/odbcsdk/include/
1218			VIRT_LIBDIR=/usr/local/virtuoso-lite/odbcsdk/lib/
1219		elif test -f /usr/local/virtuoso/odbcsdk/include/isql.h; then
1220			VIRT_INCDIR=/usr/local/virtuoso/odbcsdk/include/
1221			VIRT_LIBDIR=/usr/local/virtuoso/odbcsdk/lib/
1222		else
1223    		AC_MSG_RESULT(no)
1224    		AC_MSG_ERROR(Invalid OpenLink ODBC directory - unable to find isql.h)
1225		fi
1226   	else
1227		if test -f $withval/odbcsdk/include/isql.h; then
1228   			VIRT_INCDIR=$withval/odbcsdk/include/
1229   			VIRT_LIBDIR=$withval/odbcsdk/lib/
1230		elif test -f $withval/include/isql.h; then
1231			VIRT_INCDIR=$withval/include/
1232			VIRT_LIBDIR=$withval/lib/
1233		else
1234    		AC_MSG_RESULT(no)
1235    		AC_MSG_ERROR(Invalid OpenLink ODBC directory - unable to find isql.h under $withval)
1236		fi
1237   	fi
1238    VIRT_INCLUDE="-I$VIRT_INCDIR"
1239    VIRT_LFLAGS="-L$VIRT_LIBDIR -liodbc"
1240
1241    AC_DEFINE([HAVE_VIRT], [1], [Define if you want to use OpenLink ODBC (Virtuoso)])
1242    AC_MSG_RESULT(yes)
1243    have_db=yes
1244    if test "x$DBTYPE" = "x" ; then
1245       DBTYPE="OpenLinkODBC"
1246    else
1247       DBTYPE="$DBTYPE-OpenLinkODBC"
1248    fi
1249
1250  else
1251  	AC_MSG_RESULT(no)
1252  fi
1253],[
1254  AC_MSG_RESULT(no)
1255])
1256AC_SUBST(VIRT_LFLAGS)
1257AC_SUBST(VIRT_INCLUDE)
1258
1259
1260AC_MSG_CHECKING(for EasySoft ODBC support)
1261AC_ARG_WITH(easysoft,
1262[  --with-easysoft[=DIR]   Include EasySoft ODBC support.
1263                          DIR is the base EasySoft ODBC install directory],
1264[
1265  if test "$withval" != "no"; then
1266  	if test "$withval" = "yes"; then
1267
1268		if test -f /usr/local/easysoft/oob/client/include/sql.h; then
1269			EASYSOFT_INCDIR=/usr/local/easysoft/oob/client/include/
1270			EASYSOFT_LFLAGS="-L/usr/local/easysoft/oob/client/lib/ -L/usr/local/easysoft/lib"
1271		else
1272    		AC_MSG_RESULT(no)
1273    		AC_MSG_ERROR(Invalid EasySoft ODBC directory - unable to find sql.h)
1274		fi
1275   	else
1276		if test -f $withval/easysoft/oob/client/include/sql.h; then
1277			EASYSOFT_INCDIR=$withval/easysoft/oob/client/include/
1278			EASYSOFT_LFLAGS="-L$withval/easysoft/oob/client/lib/ -L$withval/easysoft/lib"
1279		else
1280		AC_MSG_RESULT(no)
1281		AC_MSG_ERROR(Invalid EasySoft ODBC directory - unable to find sql.h under $withval)
1282		fi
1283	fi
1284    EASYSOFT_INCLUDE="-I$EASYSOFT_INCDIR"
1285    EASYSOFT_LFLAGS="$EASYSOFT_LFLAGS -lesoobclient -lesrpc -lessupp -lesextra"
1286
1287    AC_DEFINE([HAVE_EASYSOFT], [1], [Define if you want to use EasySoft ODBC])
1288    AC_MSG_RESULT(yes)
1289    have_db=yes
1290    if test "x$DBTYPE" = "x" ; then
1291       DBTYPE="EasySoftODBC"
1292    else
1293       DBTYPE="$DBTYPE-EasySoftODBC"
1294    fi
1295
1296  else
1297  	AC_MSG_RESULT(no)
1298  fi
1299],[
1300  AC_MSG_RESULT(no)
1301])
1302AC_SUBST(EASYSOFT_LFLAGS)
1303AC_SUBST(EASYSOFT_INCLUDE)
1304
1305AC_MSG_CHECKING(for InterBase support)
1306AC_ARG_WITH(ibase,
1307[  --with-ibase[=DIR]      Include InterBase support.  DIR is the InterBase
1308                          install directory, defaults to /usr/interbase.],
1309[
1310	if test "$withval" = "yes"; then
1311		for d in /usr/interbase /opt/firebird /usr/local/firebird /usr; do
1312			if test -f $d/include/ibase.h; then
1313				withval=$d
1314				break
1315			fi
1316		done
1317		if test "$withval" = "yes"; then
1318			AC_MSG_RESULT(no)
1319			AC_MSG_ERROR(Invalid ibase directory - unable to find ibase.h)
1320		fi
1321	fi
1322
1323	if test "$withval" != "no"; then
1324		if test -f $withval/include/ibase.h; then
1325			IBASE_INCDIR=$withval/include
1326			IBASE_LIBDIR=$withval/lib
1327		else
1328    			AC_MSG_RESULT(no)
1329			AC_MSG_ERROR(Invalid InterBase directory - unable to find ibase.h)
1330		fi
1331		if test $withval/lib/libfbclient.so; then
1332
1333			IBASE_LFLAGS="-L$IBASE_LIBDIR -lfbclient"
1334		else
1335			IBASE_LFLAGS="-L$IBASE_LIBDIR -lgds"
1336		fi
1337		IBASE_INCLUDE="-I$IBASE_INCDIR"
1338		AC_DEFINE([HAVE_IBASE], [1], [Define if you want to use Interbase SQL Server])
1339		AC_MSG_RESULT($withval)
1340		have_db=yes
1341		dnl IB requires -lcrypt sometime
1342		AC_CHECK_FUNC(crypt, , AC_CHECK_LIB(crypt, crypt, IBASE_LFLAGS="$IBASE_LFLAGS -lcrypt"))
1343		dnl IB requires -ldl sometime
1344		AC_CHECK_FUNC(dlopen, , AC_CHECK_LIB(dl, dlopen, IBASE_LFLAGS="$IBASE_LFLAGS -ldl"))
1345
1346		dnl InterBase lib on FreeBSD is in old aout format
1347		dnl so we need to pass -aout flag to ranlib
1348		dnl if echo $build_os | grep -q freebsdelf; then
1349		dnl	RANLIB="$RANLIB -aout"
1350		dnl	CFLAGS="$CFLAGS -aout"
1351		dnl	AM_PROG_LIBTOOL
1352		dnl fi
1353	fi
1354    if test "x$DBTYPE" = "x" ; then
1355       DBTYPE="ibase"
1356    else
1357       DBTYPE="$DBTYPE-ibase"
1358    fi
1359
1360],[
1361	AC_MSG_RESULT(no)
1362])
1363AC_SUBST(IBASE_LFLAGS)
1364AC_SUBST(IBASE_INCLUDE)
1365
1366AC_MSG_CHECKING(for Ct-Lib support)
1367AC_ARG_WITH(ctlib,
1368[  --with-ctlib[=DIR]      Include Ct-Lib support.  DIR is the Ct-Lib
1369                          install directory, defaults to /opt/sybase.],
1370[
1371	if test "$withval" = "yes"; then
1372		withval=/opt/sybase
1373	fi
1374
1375	if test "$withval" != "no"; then
1376		if test -f $withval/include/ctpublic.h; then
1377			CTLIB_INCDIR=$withval/include
1378			CTLIB_LIBDIR=$withval/lib
1379		else
1380    			AC_MSG_RESULT(no)
1381			AC_MSG_ERROR(Invalid Ct-Lib directory - unable to find ctpublic.h)
1382		fi
1383		if test -f $withval/lib/libsybct64.a; then
1384			CTLIB_LFLAGS="-L$CTLIB_LIBDIR -lsybct64 -lsybcs64 -lsybcomn64 -lsybintl64"
1385		elif test -f $withval/lib/libsybct.a; then
1386			CTLIB_LFLAGS="-L$CTLIB_LIBDIR -lsybct -lsybcs -lsybtcl -lsybcomn -lsybintl -lsybunic"
1387		else
1388			CTLIB_LFLAGS="-L$CTLIB_LIBDIR -lct -lcs -lsybtcl -lcomn -lintl"
1389		fi
1390		CTLIB_INCLUDE="-I$CTLIB_INCDIR"
1391		AC_DEFINE([HAVE_CTLIB], [1], [Define if you want to use CT-LIB SyBase SQL Server])
1392		AC_MSG_RESULT(yes)
1393		have_db=yes
1394		dnl ctlib requires -ldl sometime
1395		AC_CHECK_FUNC(dlopen, , AC_CHECK_LIB(dl, dlopen, CTLIB_LFLAGS="$CTLIB_LFLAGS -ldl"))
1396	fi
1397    if test "x$DBTYPE" = "x" ; then
1398       DBTYPE="ctlib"
1399    else
1400       DBTYPE="$DBTYPE-ctlib"
1401    fi
1402
1403],[
1404	AC_MSG_RESULT(no)
1405])
1406AC_SUBST(CTLIB_LFLAGS)
1407AC_SUBST(CTLIB_INCLUDE)
1408
1409
1410AC_MSG_CHECKING(for FreeTDS Ct-Lib support)
1411AC_ARG_WITH(freetds,
1412[  --with-freetds[=DIR]    Include FreeTDS Ct-Lib support.  DIR is the FreeTDS
1413                          install directory, defaults to /usr/local.],
1414[
1415	if test "$withval" = "yes"; then
1416		withval=/usr/local
1417	fi
1418
1419	if test "$withval" != "no"; then
1420		if test -f $withval/include/ctpublic.h; then
1421			CTLIB_INCDIR=$withval/include
1422			CTLIB_LIBDIR=$withval/lib
1423		elif test -f $withval/include/freetds/ctpublic.h; then
1424			CTLIB_INCDIR=$withval/include/freetds
1425			CTLIB_LIBDIR=$withval/lib
1426		else
1427    			AC_MSG_RESULT(no)
1428			AC_MSG_ERROR(Invalid FreeTDS directory - unable to find ctpublic.h)
1429		fi
1430		CTLIB_LFLAGS="-L$CTLIB_LIBDIR -lct"
1431		CTLIB_INCLUDE="-I$CTLIB_INCDIR"
1432		AC_DEFINE([HAVE_CTLIB], [1], [Define if you want to use CT-LIB SyBase SQL Server])
1433		AC_MSG_RESULT(yes)
1434		have_db=yes
1435		AC_CHECK_FUNC(dlopen, , AC_CHECK_LIB(dl, dlopen, CTLIB_LFLAGS="$CTLIB_LFLAGS -ldl"))
1436	fi
1437    if test "x$DBTYPE" = "x" ; then
1438       DBTYPE="freetds"
1439    else
1440       DBTYPE="$DBTYPE-freetds"
1441    fi
1442
1443],[
1444	AC_MSG_RESULT(no)
1445])
1446AC_SUBST(CTLIB_LFLAGS)
1447AC_SUBST(CTLIB_INCLUDE)
1448
1449
1450AC_MSG_CHECKING(for sqlite support)
1451AC_ARG_WITH(sqlite,
1452[  --with-sqlite[=DIR]     Include sqlite support.  DIR is the sqlite
1453                          install directory, default to search through
1454                          a number of common places for SQLite files,],
1455[
1456	path=""
1457
1458	if test "$withval" = "yes"; then
1459		withval="/usr /usr/local"
1460	fi
1461
1462	for d in $withval; do
1463		if test -f $d/include/sqlite.h; then
1464			SQLITE_INCDIR=$d/include
1465			SQLITE_LIBDIR=$d/lib
1466			SQLITE_LFLAGS="-L$SQLITE_LIBDIR -lsqlite"
1467			SQLITE_INCLUDE="-I$SQLITE_INCDIR"
1468			path=$d
1469			AC_MSG_RESULT($d)
1470			AC_DEFINE([HAVE_SQLITE], [1], [Define if you want to use sqlite])
1471			break
1472		fi
1473	done
1474
1475	if test "$path" = ""; then
1476		AC_MSG_RESULT(no)
1477		AC_MSG_ERROR(Invalid sqlite directory - unable to find sqlite.h)
1478	fi
1479
1480	have_db=yes
1481
1482	if test "x$DBTYPE" = "x" ; then
1483		DBTYPE="sqlite"
1484	else
1485		DBTYPE="$DBTYPE-sqlite"
1486	fi
1487
1488],[
1489	AC_MSG_RESULT(no)
1490])
1491AC_SUBST(SQLITE_LFLAGS)
1492AC_SUBST(SQLITE_INCLUDE)
1493
1494
1495AC_MSG_CHECKING(for sqlite3 support)
1496AC_ARG_WITH(sqlite3,
1497[  --with-sqlite3[=DIR]    Include sqlite3 support.  DIR is the sqlite
1498                          install directory, default to search through
1499                          a number of common places for SQLite files,],
1500[
1501	path=""
1502
1503	if test "$withval" = "yes"; then
1504		withval="/usr /usr/local"
1505	fi
1506
1507	for d in $withval; do
1508		if test "$d" = "amalgamation"; then
1509			AC_DEFINE([HAVE_SQLITE3_AMALGAMATION], [1], [Define if you want to use sqlite3 amalgamation file sqlite3.c])
1510			path=$d
1511			AC_MSG_RESULT($d)
1512			break
1513		fi
1514		if test -f $d/include/sqlite3.h; then
1515			SQLITE3_INCDIR=$d/include
1516			SQLITE3_LIBDIR=$d/lib
1517			SQLITE3_LFLAGS="-L$SQLITE3_LIBDIR -lsqlite3"
1518			SQLITE3_INCLUDE="-I$SQLITE3_INCDIR"
1519			path=$d
1520			AC_MSG_RESULT($d)
1521			AC_DEFINE([HAVE_SQLITE3], [1], [Define if you want to use sqlite3])
1522			break
1523		fi
1524	done
1525
1526	if test "$path" = ""; then
1527		AC_MSG_RESULT(no)
1528		AC_MSG_ERROR(Invalid sqlite directory - unable to find sqlite3.h)
1529	fi
1530
1531	have_db=yes
1532
1533	if test "x$DBTYPE" = "x" ; then
1534		DBTYPE="sqlite3"
1535	else
1536		DBTYPE="$DBTYPE-sqlite3"
1537	fi
1538
1539],[
1540	AC_MSG_RESULT(no)
1541])
1542AC_SUBST(SQLITE3_LFLAGS)
1543AC_SUBST(SQLITE3_INCLUDE)
1544
1545
1546AC_MSG_CHECKING(for Oracle8 support)
1547AC_ARG_WITH(oracle8,
1548[  --with-oracle8[=DIR]    Include Oracle8 support.  DIR is the Oracle
1549                          home directory, defaults to $ORACLE_HOME or
1550                          /oracle8/app/oracle/product/8.0.5.],
1551[
1552	if test "$withval" = "yes"; then
1553		withval="$ORACLE_HOME"
1554		if test "$withval" = ""; then
1555			withval=/oracle8/app/oracle/product/8.0.5
1556		fi
1557	fi
1558
1559	if test "$withval" != "no"; then
1560		if test -f $withval/rdbms/demo/oci.h; then
1561			ORACLE8_INCDIR1=$withval/rdbms/demo/
1562			ORACLE8_INCDIR2=$withval/rdbms/public/
1563			ORACLE8_INCDIR3=$withval/network/public/
1564			ORACLE8_INCDIR4=$withval/plsql/public/
1565			ORACLE8_LIBDIR1=$withval/lib
1566			ORACLE8_LIBDIR2=$withval/rdbms/lib
1567		else
1568    			AC_MSG_RESULT(no)
1569			AC_MSG_ERROR(Invalid ORACLE directory - unable to find oci.h)
1570		fi
1571                if test -f $withval/lib/libwtc8.so; then
1572                         ORACLE8_LIBS="-lwtc8"
1573                fi
1574
1575		ORACLE8_LFLAGS="-L$ORACLE8_LIBDIR1 -L$ORACLE8_LIBDIR2$ORACLE8_LIBS  -lclntsh -lmm -lepc -lclient -lvsn -lcommon -lgeneric -lcore4 -lnlsrtl3 -lm -lnetv2 -lnttcp -lnetwork -lncr -lsql"
1576		ORACLE8_INCLUDE="-I$ORACLE8_INCDIR1 -I$ORACLE8_INCDIR2 -I$ORACLE8_INCDIR3 -I$ORACLE8_INCDIR4"
1577 		AC_DEFINE([HAVE_ORACLE8], [1], [Define if you want to use Oracle 8 SQL Server])
1578		AC_MSG_RESULT(yes)
1579		have_db=yes
1580	fi
1581    if test "x$DBTYPE" = "x" ; then
1582       DBTYPE="oracle8"
1583    else
1584       DBTYPE="$DBTYPE-oracle8"
1585    fi
1586
1587],[
1588	AC_MSG_RESULT(no)
1589])
1590AC_SUBST(ORACLE8_LFLAGS)
1591AC_SUBST(ORACLE8_INCLUDE)
1592
1593
1594AC_MSG_CHECKING(for Oracle8i support)
1595AC_ARG_WITH(oracle8i,
1596[  --with-oracle8i[=DIR]   Include Oracle8i support.  DIR is the Oracle
1597                          home directory, defaults to $ORACLE_HOME],
1598[
1599	if test "$withval" = "yes"; then
1600		withval="$ORACLE_HOME"
1601	fi
1602
1603	if test "$withval" != "no"; then
1604		if test -f $withval/rdbms/demo/oci.h; then
1605			ORACLE8_INCDIR1=$withval/rdbms/demo/
1606			ORACLE8_INCDIR2=$withval/rdbms/public/
1607			ORACLE8_INCDIR3=$withval/network/public/
1608			ORACLE8_INCDIR4=$withval/plsql/public/
1609			ORACLE8_LIBDIR1=$withval/lib
1610			ORACLE8_LIBDIR2=$withval/rdbms/lib
1611
1612			ORACLE8_LFLAGS="-L$ORACLE8_LIBDIR1 -L$ORACLE8_LIBDIR2 -lclntsh -lmm -lm"
1613			ORACLE8_INCLUDE="-I$ORACLE8_INCDIR1 -I$ORACLE8_INCDIR2 -I$ORACLE8_INCDIR3 -I$ORACLE8_INCDIR4"
1614 			AC_DEFINE([HAVE_ORACLE8], [1], [Define if you want to use Oracle 8 SQL Server])
1615			AC_MSG_RESULT($withval)
1616			have_db=yes
1617		elif test -f $withval/rdbms/public/oci.h; then
1618			ORACLE8_INCDIR1=$withval/rdbms/public/
1619			ORACLE8_LIBDIR1=$withval/lib
1620			ORACLE8_LIBDIR2=$withval/rdbms/lib
1621			if test -f $withval/lib/libnnz11.so; then
1622				NNZ=nnz11
1623			else
1624				NNZ=nnz10
1625			fi
1626			ORACLE8_LFLAGS="-L$ORACLE8_LIBDIR1 -L$ORACLE8_LIBDIR2 -lclntsh -l$NNZ -lm"
1627			ORACLE8_INCLUDE="-I$ORACLE8_INCDIR1"
1628 			AC_DEFINE([HAVE_ORACLE8], [1], [Define if you want to use Oracle 8 SQL Server])
1629			AC_MSG_RESULT($withval)
1630			have_db=yes
1631		elif test -f /usr/include/oracle/11.2/client64/oci.h; then
1632			dnl oracle-instantclient11.2-devel-11.2.0.2.0.x86_64.rpm
1633			ORACLE8_INCDIR=/usr/include/oracle/11.2/client64/
1634			ORACLE8_LIBDIR=/usr/lib/oracle/11.2/client64/lib/
1635			ORACLE8_LFLAGS="-L$ORACLE8_LIBDIR -lclntsh -lnnz11 -lm"
1636			ORACLE8_INCLUDE="-I$ORACLE8_INCDIR"
1637 			AC_DEFINE([HAVE_ORACLE8], [1], [Define if you want to use Oracle 8 SQL Server])
1638			AC_MSG_RESULT($withval)
1639			have_db=yes
1640
1641		else
1642    			AC_MSG_RESULT(no)
1643			AC_MSG_ERROR(Invalid ORACLE directory - unable to find oci.h)
1644		fi
1645	fi
1646    if test "x$DBTYPE" = "x" ; then
1647       DBTYPE="oracle8i"
1648    else
1649       DBTYPE="$DBTYPE-oracle8i"
1650    fi
1651
1652],[
1653	AC_MSG_RESULT(no)
1654])
1655AC_SUBST(ORACLE8_LFLAGS)
1656AC_SUBST(ORACLE8_INCLUDE)
1657
1658
1659
1660dnl AC_DIVERT_PUSH(0)
1661dnl gujarati and tscii are temporary disabled
1662define(DCHARSETS_AVAILABLE,big5 gb2312 gbk japanese euc-kr)
1663CHARSETS_AVAILABLE="DCHARSETS_AVAILABLE"
1664dnl AC_DIVERT_POP
1665
1666AC_ARG_WITH(extra-charsets,
1667  [  --with-extra-charsets=CHARSET[,CHARSET,...]
1668                          Use additional non-default charsets:
1669                          none, all or a comma separated list from this set:
1670                          DCHARSETS_AVAILABLE],
1671  [extra_charsets="$withval"],
1672  [extra_charsets="none"])
1673
1674AC_MSG_CHECKING(for additional character sets)
1675
1676if test "$extra_charsets" = no; then
1677  CHARSETS=""
1678elif test "$extra_charsets" = none; then
1679  CHARSETS=""
1680else
1681  if test "$extra_charsets" = all; then
1682    CHARSETS="$CHARSETS_AVAILABLE"
1683  else
1684    CHARSETS=`echo $extra_charsets | sed -e 's/,/ /g'`
1685  fi
1686fi
1687
1688for cs in $CHARSETS
1689do
1690  case $cs in
1691    big5)
1692      AC_DEFINE([HAVE_CHARSET_big5], [1], [Define if you want Chinese big5 support])
1693      ;;
1694    euc-kr)
1695      AC_DEFINE([HAVE_CHARSET_euc_kr], [1], [Define if you want Korean euc-kr support])
1696      ;;
1697    gb2312)
1698      AC_DEFINE([HAVE_CHARSET_gb2312], [1], [Define if you want Chinese gb2312 support])
1699      ;;
1700    japanese)
1701      AC_DEFINE([HAVE_CHARSET_japanese], [1], [Define if you want Japanese support])
1702      ;;
1703    gbk)
1704      AC_DEFINE([HAVE_CHARSET_gbk], [1], [Define if you want Chinese gbk support])
1705      ;;
1706    gujarati)
1707      AC_DEFINE([HAVE_CHARSET_gujarati], [1], [Define if you want gujarati support])
1708      ;;
1709    tscii)
1710      AC_DEFINE([HAVE_CHARSET_tscii], [1], [Define if you want tscii support])
1711      ;;
1712    *)
1713      AC_MSG_ERROR([Charset $cs not available. (Available: $CHARSETS_AVAILABLE).]);
1714  esac
1715  ADDCHARSETS="$ADDCHARSETS $cs"
1716done
1717
1718AC_MSG_RESULT($ADDCHARSETS)
1719
1720
1721dnl Check if one of databases was selected
1722if test "$have_db" != "yes"; then
1723	db_PROGS=""
1724else
1725	db_PROGS="indexer"
1726fi
1727
1728if test "$enable_fhs_layout" == "no"; then
1729  db_sbin_PROGS=$db_PROGS
1730else
1731  db_bin_PROGS=$db_PROGS
1732fi
1733
1734AC_SUBST(db_PROGS)
1735AC_SUBST(db_bin_PROGS)
1736AC_SUBST(db_sbin_PROGS)
1737
1738AC_DEFINE_UNQUOTED([UDM_DBTYPE], ["$DBTYPE"], [Define UDM_DBTYPE])
1739AC_SUBST(DBTYPE)
1740CDIR=`pwd`
1741AC_SUBST(CDIR)
1742AC_OUTPUT(Makefile build/Makefile include/Makefile src/Makefile doc/Makefile dnl
1743  etc/Makefile etc/freq/Makefile dnl
1744  etc/langmap/Makefile etc/stopwords/Makefile etc/synonym/Makefile dnl
1745  doc/catalog dnl
1746  misc/Makefile scripts/Makefile create/Makefile dnl
1747  create/db2/Makefile create/ibase/Makefile dnl
1748  create/mssql/Makefile create/mysql/Makefile create/oracle/Makefile dnl
1749  create/pgsql/Makefile  dnl
1750  create/sybase/Makefile create/virtuoso/Makefile create/sqlite/Makefile dnl
1751  create/mimer/Makefile create/cache/Makefile create/monetdb/Makefile dnl
1752  scripts/udm-config dnl
1753  perl/Makefile.PL msearch-test/Makefile)
1754
1755
1756if test "$have_db" != "yes"; then
1757	echo
1758	echo
1759	echo "No database selected! indexering part will not be compiled"
1760	echo "If it's incorrect, use --with-XXX where XXX is your preferred database type"
1761fi
1762
1763echo
1764echo "***********************************************************"
1765echo "*                                                         *"
1766echo "*     Now run make && make install                        *"
1767echo "*     If it fails, try to use GNU make,                   *"
1768echo "*     often installed as gmake.                           *"
1769echo "*                                                         *"
1770echo "*                                                         *"
1771echo "*            Thank you for using mnoGoSearch!             *"
1772echo "***********************************************************"
1773echo
1774
1775