]> git.sur5r.net Git - bacula/bacula/blob - bacula/autoconf/bacula-macros/db.m4
Don't use the -R (runtime link path) when not using libtool for the linking.
[bacula/bacula] / bacula / autoconf / bacula-macros / db.m4
1 AC_DEFUN([BA_CHECK_DBI_DB],
2 [
3 AC_MSG_CHECKING(for DBI support)
4 AC_ARG_WITH(dbi,
5 AC_HELP_STRING([--with-dbi@<:@=DIR@:>@], [Include DBI support. DIR is the DBD base install directory, default is to search through a number of common places for the DBI files.]),
6 [
7   if test "$withval" != "no"; then
8      if test "$withval" = "yes"; then
9         if test -f /usr/local/include/dbi/dbi.h; then
10            DBI_INCDIR=/usr/local/dbi/include
11            if test -d /usr/local/lib64; then
12               DBI_LIBDIR=/usr/local/lib64
13            else
14               DBI_LIBDIR=/usr/local/lib
15            fi
16            DBI_BINDIR=/usr/local/bin
17         elif test -f /usr/include/dbi/dbi.h; then
18            DBI_INCDIR=/usr/include
19            if test -d /usr/lib64; then
20               DBI_LIBDIR=/usr/lib64
21            else
22               DBI_LIBDIR=/usr/lib
23            fi
24            DBI_BINDIR=/usr/bin      
25         elif test -f $prefix/include/dbi/dbi.h; then
26            DBI_INCDIR=$prefix/include
27            if test -d $prefix/lib64; then
28               DBI_LIBDIR=$prefix/lib64
29            else
30               DBI_LIBDIR=$prefix/lib
31            fi
32            DBI_BINDIR=$prefix/bin      
33         else
34            AC_MSG_RESULT(no)
35            AC_MSG_ERROR(Unable to find dbi.h in standard locations)
36         fi
37         if test -d /usr/local/lib/dbd; then
38            DRIVERDIR=/usr/local/lib/dbd
39            if test -d /usr/local/lib64/dbd; then
40               DRIVERDIR=/usr/local/lib64/dbd
41            else
42               DRIVERDIR=/usr/local/lib/dbd
43            fi
44         elif test -d /usr/lib/dbd; then
45            DRIVERDIR=/usr/lib/dbd
46            if test -d /usr/lib64/dbd; then
47               DRIVERDIR=/usr/lib64/dbd
48            else
49               DRIVERDIR=/usr/lib/dbd
50            fi
51         elif test -d $prefix/lib/dbd; then
52            if test -d $prefix/lib64/dbd; then
53               DRIVERDIR=$prefix/lib64/dbd
54            else
55               DRIVERDIR=$prefix/lib/dbd
56            fi
57         elif test -d /usr/local/lib64/dbd; then
58            DRIVERDIR=/usr/local/lib64/dbd
59         elif test -d /usr/lib64/dbd; then
60            DRIVERDIR=/usr/lib64/dbd
61         elif test -d $prefix/lib64/dbd; then
62            DRIVERDIR=$prefix/lib64/dbd
63         else
64            AC_MSG_RESULT(no)
65            AC_MSG_ERROR(Unable to find DBD drivers in standard locations)
66         fi
67      else
68         if test -f $withval/dbi.h; then
69            DBI_INCDIR=$withval
70            DBI_LIBDIR=$withval
71            DBI_BINDIR=$withval
72         elif test -f $withval/include/dbi/dbi.h; then
73            DBI_INCDIR=$withval/include
74            if test -d $withval/lib64; then
75               DBI_LIBDIR=$withval/lib64
76            else
77               DBI_LIBDIR=$withval/lib
78            fi
79            DBI_BINDIR=$withval/bin
80         else
81            AC_MSG_RESULT(no)
82            AC_MSG_ERROR(Invalid DBI directory $withval - unable to find dbi.h under $withval)
83         fi
84         if test -d $withval/dbd; then
85            DRIVERDIR=$withval/dbd
86         elif test -d $withval/lib/; then
87            if test -d $withval/lib64/dbd; then
88               DRIVERDIR=$withval/lib64/dbd
89            else
90               DRIVERDIR=$withval/lib/dbd
91            fi
92         elif test -d $withval/lib64/dbd; then
93            DRIVERDIR=$withval/lib64/dbd
94         else
95            AC_MSG_RESULT(no)
96            AC_MSG_ERROR(Invalid DBD driver directory $withval - unable to find DBD drivers under $withval)
97         fi
98      fi
99      DBI_INCLUDE=-I$DBI_INCDIR
100      if test x$use_libtool != xno; then
101         DBI_LIBS="-R $DBI_LIBDIR -L$DBI_LIBDIR -ldbi"
102      else
103         DBI_LIBS="-L$DBI_LIBDIR -ldbi"
104      fi
105      DBI_LIB=$DBI_LIBDIR/libdbi.a
106      DBI_DBD_DRIVERDIR="-D DBI_DRIVER_DIR=\\\"$DRIVERDIR\\\""
107      DB_LIBS="${DB_LIBS} ${DBI_LIBS}"
108
109      AC_DEFINE(HAVE_DBI, 1, [Set if you have the DBI driver])
110      AC_MSG_RESULT(yes)
111
112      if test -z "${db_backends}"; then
113          db_backends="DBI"
114      else
115          db_backends="${db_backends} DBI"
116      fi
117      if test -z "${DB_BACKENDS}" ; then
118         DB_BACKENDS="dbi"
119      else
120         DB_BACKENDS="${DB_BACKENDS} dbi"
121      fi
122      uncomment_dbi=" "
123
124   else
125      AC_MSG_RESULT(no)
126   fi
127 ],[
128   AC_MSG_RESULT(no)
129 ])
130
131 AC_SUBST(DBI_LIBS)
132 AC_SUBST(DBI_INCLUDE)
133 AC_SUBST(DBI_BINDIR)
134 AC_SUBST(DBI_DBD_DRIVERDIR)  
135 AC_SUBST(uncomment_dbi)
136
137 ])
138
139 AC_DEFUN([BA_CHECK_DBI_DRIVER],
140 [
141 db_prog=no
142 AC_MSG_CHECKING(for DBI drivers support)
143 AC_ARG_WITH(dbi-driver,
144 AC_HELP_STRING([--with-dbi-driver@<:@=DRIVER@:>@], [Suport for DBI driver. DRIVER is the one DBI driver like Mysql, Postgresql, others. Default is to not configure any driver.]),
145 [
146   if test "$withval" != "no"; then
147      case $withval in
148         "mysql")
149            db_prog="mysql"
150            if test -f /usr/local/mysql/bin/mysql; then
151               SQL_BINDIR=/usr/local/mysql/bin
152               if test -f /usr/local/mysql/lib64/mysql/libmysqlclient_r.a \
153                  -o -f /usr/local/mysql/lib64/mysql/libmysqlclient_r.so; then
154                  MYSQL_LIBDIR=/usr/local/mysql/lib64/mysql
155               else
156                  MYSQL_LIBDIR=/usr/local/mysql/lib/mysql
157               fi
158            elif test -f /usr/bin/mysql; then
159               SQL_BINDIR=/usr/bin
160               if test -f /usr/lib64/mysql/libmysqlclient_r.a \
161                   -o -f /usr/lib64/mysql/libmysqlclient_r.so; then  
162                   MYSQL_LIBDIR=/usr/lib64/mysql
163               elif test -f /usr/lib/mysql/libmysqlclient_r.a \
164                   -o -f /usr/lib/mysql/libmysqlclient_r.so; then
165                   MYSQL_LIBDIR=/usr/lib/mysql
166               else
167                   MYSQL_LIBDIR=/usr/lib
168               fi
169            elif test -f /usr/local/bin/mysql; then
170               SQL_BINDIR=/usr/local/bin
171               if test -f /usr/local/lib64/mysql/libmysqlclient_r.a \
172                   -o -f /usr/local/lib64/mysql/libmysqlclient_r.so; then  
173                   MYSQL_LIBDIR=/usr/local/lib64/mysql
174               elif test -f /usr/local/lib/mysql/libmysqlclient_r.a \
175                   -o -f /usr/local/lib/mysql/libmysqlclient_r.so; then
176                   MYSQL_LIBDIR=/usr/local/lib/mysql
177               else
178                   MYSQL_LIBDIR=/usr/local/lib
179               fi
180            elif test -f $withval/bin/mysql; then
181               SQL_BINDIR=$withval/bin
182               if test -f $withval/lib64/mysql/libmysqlclient_r.a \
183                   -o -f $withval/lib64/mysql/libmysqlclient_r.so; then
184                   MYSQL_LIBDIR=$withval/lib64/mysql
185               elif test -f $withval/lib64/libmysqlclient_r.a \
186                   -o -f $withval/lib64/libmysqlclient_r.so; then
187                   MYSQL_LIBDIR=$withval/lib64
188               elif test -f $withval/lib/libmysqlclient_r.a \
189                   -o -f $withval/lib/libmysqlclient_r.so; then
190                   MYSQL_LIBDIR=$withval/lib/
191               else
192                   MYSQL_LIBDIR=$withval/lib/mysql
193               fi
194            else
195               AC_MSG_RESULT(no)
196               AC_MSG_ERROR(Unable to find mysql in standard locations)
197            fi
198            if test -f $SQL_LIBDIR/libmysqlclient_r.so; then
199               DB_PROG_LIB=$SQL_LIBDIR/libmysqlclient_r.so
200            else
201               DB_PROG_LIB=$SQL_LIBDIR/libmysqlclient_r.a
202            fi
203         ;;
204         "postgresql")
205            db_prog="postgresql"
206            PG_CONFIG=`which pg_config`
207            if test -n "$PG_CONFIG"; then
208               POSTGRESQL_BINDIR=`"$PG_CONFIG" --bindir`
209               POSTGRESQL_LIBDIR=`"$PG_CONFIG" --libdir`
210            elif test -f /usr/local/bin/psql; then
211               POSTGRESQL_BINDIR=/usr/local/bin
212               if test -d /usr/local/lib64; then
213                  POSTGRESQL_LIBDIR=/usr/local/lib64
214               else
215                  POSTGRESQL_LIBDIR=/usr/local/lib
216               fi
217            elif test -f /usr/bin/psql; then
218               POSTGRESQL_BINDIR=/usr/local/bin
219               if test -d /usr/lib64/postgresql; then
220                  POSTGRESQL_LIBDIR=/usr/lib64/postgresql
221               elif test -d /usr/lib/postgresql; then
222                  POSTGRESQL_LIBDIR=/usr/lib/postgresql
223               elif test -d /usr/lib64; then
224                  POSTGRESQL_LIBDIR=/usr/lib64
225               else
226                  POSTGRESQL_LIBDIR=/usr/lib
227               fi
228            elif test -f $withval/bin/psql; then
229               POSTGRESQL_BINDIR=$withval/bin
230               if test -d $withval/lib64; then
231                  POSTGRESQL_LIBDIR=$withval/lib64
232               else
233                  POSTGRESQL_LIBDIR=$withval/lib
234               fi
235            else
236               AC_MSG_RESULT(no)
237               AC_MSG_ERROR(Unable to find psql in standard locations)
238            fi
239            if test -f $POSTGRESQL_LIBDIR/libpq.so; then
240               DB_PROG_LIB=$POSTGRESQL_LIBDIR/libpq.so
241            else
242               DB_PROG_LIB=$POSTGRESQL_LIBDIR/libpq.a
243            fi
244         ;;
245         "sqlite3")
246            db_prog="sqlite3"
247            if test -f /usr/local/bin/sqlite3; then
248               SQLITE_BINDIR=/usr/local/bin
249               if test -d /usr/local/lib64; then
250                  SQLITE_LIBDIR=/usr/local/lib64
251               else
252                  SQLITE_LIBDIR=/usr/local/lib
253               fi
254            elif test -f /usr/bin/sqlite3; then
255               SQLITE_BINDIR=/usr/bin
256               if test -d /usr/lib64; then
257                  SQLITE_LIBDIR=/usr/lib64
258               else
259                  SQLITE_LIBDIR=/usr/lib
260               fi                 
261            elif test -f $withval/bin/sqlite3; then
262               SQLITE_BINDIR=$withval/bin
263               if test -d $withval/lib64; then
264                  SQLITE_LIBDIR=$withval/lib64
265               else
266                  SQLITE_LIBDIR=$withval/lib
267               fi                 
268            else
269               AC_MSG_RESULT(no)
270               AC_MSG_ERROR(Unable to find sqlite in standard locations)
271            fi
272            if test -f $SQLITE_LIBDIR/libsqlite3.so; then
273               DB_PROG_LIB=$SQLITE_LIBDIR/libsqlite3.so
274            else
275               DB_PROG_LIB=$SQLITE_LIBDIR/libsqlite3.a
276            fi
277         ;;                
278         *)
279            AC_MSG_RESULT(no)
280            AC_MSG_ERROR(Unable to set DBI driver. $withval is not supported)
281         ;;
282      esac
283
284      AC_MSG_RESULT(yes)
285      DB_PROG=$db_prog
286   else
287      AC_MSG_RESULT(no)
288   fi
289 ],[
290   AC_MSG_RESULT(no)
291 ])
292
293 AC_SUBST(MYSQL_BINDIR)
294 AC_SUBST(POSTGRESQL_BINDIR)
295 AC_SUBST(SQLITE_BINDIR)
296 AC_SUBST(DB_PROG)
297 AC_SUBST(DB_PROG_LIB)
298
299 ])
300
301
302 AC_DEFUN([BA_CHECK_MYSQL_DB],
303 [
304 AC_MSG_CHECKING(for MySQL support)
305 AC_ARG_WITH(mysql,
306 AC_HELP_STRING([--with-mysql@<:@=DIR@:>@], [Include MySQL support. DIR is the MySQL base install directory, default is to search through a number of common places for the MySQL files.]),
307 [
308   if test "$withval" != "no"; then
309         if test "$withval" = "yes"; then
310            if test -f /usr/local/mysql/include/mysql/mysql.h; then
311                    MYSQL_INCDIR=/usr/local/mysql/include/mysql
312                    if test -f /usr/local/mysql/lib64/mysql/libmysqlclient_r.a \
313                         -o -f /usr/local/mysql/lib64/mysql/libmysqlclient_r.so; then
314                            MYSQL_LIBDIR=/usr/local/mysql/lib64/mysql
315                    else
316                            MYSQL_LIBDIR=/usr/local/mysql/lib/mysql
317                    fi
318                    MYSQL_BINDIR=/usr/local/mysql/bin
319            elif test -f /usr/include/mysql/mysql.h; then
320                    MYSQL_INCDIR=/usr/include/mysql
321                    if test -f /usr/lib64/mysql/libmysqlclient_r.a \
322                         -o -f /usr/lib64/mysql/libmysqlclient_r.so; then  
323                            MYSQL_LIBDIR=/usr/lib64/mysql
324                    elif test -f /usr/lib64/libmysqlclient_r.a \
325                         -o -f /usr/lib64/libmysqlclient_r.so; then
326                            MYSQL_LIBDIR=/usr/lib64
327                    elif test -f /usr/lib/mysql/libmysqlclient_r.a \
328                           -o -f /usr/lib/mysql/libmysqlclient_r.so; then
329                            MYSQL_LIBDIR=/usr/lib/mysql
330                    else
331                            MYSQL_LIBDIR=/usr/lib
332                    fi
333                    MYSQL_BINDIR=/usr/bin
334            elif test -f /usr/include/mysql.h; then
335                    MYSQL_INCDIR=/usr/include
336                    if test -f /usr/lib64/libmysqlclient_r.a \
337                         -o -f /usr/lib64/libmysqlclient_r.so; then
338                            MYSQL_LIBDIR=/usr/lib64
339                    else
340                            MYSQL_LIBDIR=/usr/lib
341                    fi
342                    MYSQL_BINDIR=/usr/bin
343            elif test -f /usr/local/include/mysql/mysql.h; then
344                    MYSQL_INCDIR=/usr/local/include/mysql
345                    if test -f /usr/local/lib64/mysql/libmysqlclient_r.a \
346                         -o -f /usr/local/lib64/mysql/libmysqlclient_r.so; then
347                            MYSQL_LIBDIR=/usr/local/lib64/mysql
348                    else
349                            MYSQL_LIBDIR=/usr/local/lib/mysql
350                    fi
351                    MYSQL_BINDIR=/usr/local/bin
352            elif test -f /usr/local/include/mysql.h; then
353                    MYSQL_INCDIR=/usr/local/include
354                    if test -f /usr/local/lib64/libmysqlclient_r.a \
355                         -o -f /usr/local/lib64/libmysqlclient_r.so; then
356                            MYSQL_LIBDIR=/usr/local/lib64
357                    else
358                            MYSQL_LIBDIR=/usr/local/lib
359                    fi
360                    MYSQL_BINDIR=/usr/local/bin
361            else
362               AC_MSG_RESULT(no)
363               AC_MSG_ERROR(Unable to find mysql.h in standard locations)
364            fi
365         else
366            if test -f $withval/include/mysql/mysql.h; then
367               MYSQL_INCDIR=$withval/include/mysql
368               if test -f $withval/lib64/mysql/libmysqlclient_r.a \
369                    -o -f $withval/lib64/mysql/libmysqlclient_r.so; then
370                  MYSQL_LIBDIR=$withval/lib64/mysql
371               elif test -f $withval/lib64/libmysqlclient_r.a \
372                    -o -f $withval/lib64/libmysqlclient_r.so; then
373                  MYSQL_LIBDIR=$withval/lib64
374               elif test -f $withval/lib/libmysqlclient_r.a \
375                    -o -f $withval/lib/libmysqlclient_r.so; then
376                  MYSQL_LIBDIR=$withval/lib
377               else
378                  MYSQL_LIBDIR=$withval/lib/mysql
379               fi
380               MYSQL_BINDIR=$withval/bin
381            elif test -f $withval/include/mysql.h; then
382               MYSQL_INCDIR=$withval/include
383               if test -f $withval/lib64/libmysqlclient_r.a \
384                    -o -f $withval/lib64/libmysqlclient_r.so; then
385                  MYSQL_LIBDIR=$withval/lib64
386               else
387                  MYSQL_LIBDIR=$withval/lib
388               fi
389               MYSQL_BINDIR=$withval/bin
390            else
391               AC_MSG_RESULT(no)
392               AC_MSG_ERROR(Invalid MySQL directory $withval - unable to find mysql.h under $withval)
393            fi
394         fi
395      MYSQL_INCLUDE=-I$MYSQL_INCDIR
396      if test -f $MYSQL_LIBDIR/libmysqlclient_r.a \
397           -o -f $MYSQL_LIBDIR/libmysqlclient_r.so; then
398         if test x$use_libtool != xno; then
399            MYSQL_LIBS="-R $MYSQL_LIBDIR -L$MYSQL_LIBDIR -lmysqlclient_r -lz"
400         else
401            MYSQL_LIBS="-L$MYSQL_LIBDIR -lmysqlclient_r -lz"
402         fi
403         MYSQL_LFLAGS="-L$MYSQL_LIBDIR -lmysqlclient_r -lz"
404         AC_DEFINE(HAVE_THREAD_SAFE_MYSQL, 1, [Set if Thread Safe MySQL can be checked using mysql_thread_safe])
405         DB_LIBS="${DB_LIBS} ${MYSQL_LIBS}"
406      fi
407      MYSQL_LIB=$MYSQL_LIBDIR/libmysqlclient_r.a
408
409      AC_DEFINE(HAVE_MYSQL, 1, [Set if you have an MySQL Database])
410      AC_MSG_RESULT(yes)
411
412      if test -z "${db_backends}" ; then
413          db_backends="MySQL"
414      else
415          db_backends="${db_backends} MySQL"
416      fi
417      if test -z "${DB_BACKENDS}" ; then
418          DB_BACKENDS="mysql"
419      else
420          DB_BACKENDS="${DB_BACKENDS} mysql"
421      fi
422   else
423      AC_MSG_RESULT(no)
424   fi
425 ],[
426   AC_MSG_RESULT(no)
427 ])
428
429 AC_MSG_CHECKING(for MySQL embedded support)
430 AC_ARG_WITH(embedded-mysql,
431 AC_HELP_STRING([--with-embedded-mysql@<:@=DIR@:>@], [Include MySQL support. DIR is the MySQL base install directory, default is to search through a number of common places for the MySQL files.]),
432 [
433   if test "$withval" != "no"; then
434         if test "$withval" = "yes"; then
435                 if test -f /usr/local/mysql/include/mysql/mysql.h; then
436                         MYSQL_INCDIR=/usr/local/mysql/include/mysql
437                         if test -d /usr/local/mysql/lib64/mysql; then
438                                 MYSQL_LIBDIR=/usr/local/mysql/lib64/mysql
439                         else
440                                 MYSQL_LIBDIR=/usr/local/mysql/lib/mysql
441                         fi
442                         MYSQL_BINDIR=/usr/local/mysql/bin
443                 elif test -f /usr/include/mysql/mysql.h; then
444                         MYSQL_INCDIR=/usr/include/mysql
445                         if test -d /usr/lib64/mysql; then
446                                 MYSQL_LIBDIR=/usr/lib64/mysql
447                         else
448                                 MYSQL_LIBDIR=/usr/lib/mysql
449                         fi
450                         MYSQL_BINDIR=/usr/bin
451                 elif test -f /usr/include/mysql.h; then
452                         MYSQL_INCDIR=/usr/include
453                         if test -d /usr/lib64; then
454                                 MYSQL_LIBDIR=/usr/lib64
455                         else
456                                 MYSQL_LIBDIR=/usr/lib
457                         fi
458                         MYSQL_BINDIR=/usr/bin
459                 elif test -f /usr/local/include/mysql/mysql.h; then
460                         MYSQL_INCDIR=/usr/local/include/mysql
461                         if test -d /usr/local/lib64/mysql; then
462                                 MYSQL_LIBDIR=/usr/local/lib64/mysql
463                         else
464                                 MYSQL_LIBDIR=/usr/local/lib/mysql
465                         fi
466                         MYSQL_BINDIR=/usr/local/bin
467                 elif test -f /usr/local/include/mysql.h; then
468                         MYSQL_INCDIR=/usr/local/include
469                         if test -d /usr/local/lib64; then
470                                 MYSQL_LIBDIR=/usr/local/lib64
471                         else
472                                 MYSQL_LIBDIR=/usr/local/lib
473                         fi
474                         MYSQL_BINDIR=/usr/local/bin
475                 else
476                    AC_MSG_RESULT(no)
477                    AC_MSG_ERROR(Unable to find mysql.h in standard locations)
478                 fi
479         else
480                 if test -f $withval/include/mysql/mysql.h; then
481                         MYSQL_INCDIR=$withval/include/mysql
482                         if test -d $withval/lib64/mysql; then
483                                 MYSQL_LIBDIR=$withval/lib64/mysql
484                         else
485                                 MYSQL_LIBDIR=$withval/lib/mysql
486                         fi
487                         MYSQL_BINDIR=$withval/bin
488                 elif test -f $withval/include/mysql.h; then
489                         MYSQL_INCDIR=$withval/include
490                         if test -d $withval/lib64; then
491                                 MYSQL_LIBDIR=$withval/lib64
492                         else
493                                 MYSQL_LIBDIR=$withval/lib
494                         fi
495                         MYSQL_BINDIR=$withval/bin
496                 else
497                    AC_MSG_RESULT(no)
498                    AC_MSG_ERROR(Invalid MySQL directory $withval - unable to find mysql.h under $withval)
499                 fi
500         fi
501      MYSQL_INCLUDE=-I$MYSQL_INCDIR
502      if test x$use_libtool != xno; then
503         MYSQL_LIBS="-R $MYSQL_LIBDIR -L$MYSQL_LIBDIR -lmysqld -lz -lm -lcrypt"
504      else
505         MYSQL_LIBS="-L$MYSQL_LIBDIR -lmysqld -lz -lm -lcrypt"
506      fi
507      MYSQL_LFLAGS="-L$MYSQL_LIBDIR -lmysqld -lz -lm -lcrypt"
508      MYSQL_LIB=$MYSQL_LIBDIR/libmysqld.a
509      DB_LIBS="${DB_LIBS} ${MYSQL_LIBS}"
510
511      AC_DEFINE(HAVE_MYSQL, 1, [Set if you have an MySQL Database])
512      AC_DEFINE(HAVE_EMBEDDED_MYSQL, 1, [Set if you have an Embedded MySQL Database])
513      AC_MSG_RESULT(yes)
514
515      if test -z "${db_backends}"; then
516          db_backends="MySQL"
517      else
518          db_backends="${db_backends} MySQL"
519      fi
520      if test -z "${DB_BACKENDS}"; then
521          DB_BACKENDS="mysql"
522      else
523          DB_BACKENDS="${DB_BACKENDS} mysql"
524      fi
525   else
526      AC_MSG_RESULT(no)
527   fi
528 ],[
529   AC_MSG_RESULT(no)
530 ])
531
532 AC_SUBST(MYSQL_LIBS)
533 AC_SUBST(MYSQL_INCLUDE)
534 AC_SUBST(MYSQL_BINDIR)
535   
536 ])
537
538 AC_DEFUN([BA_CHECK_INGRES_DB],
539 [
540 AC_MSG_CHECKING(for Ingres support)
541 AC_ARG_WITH(ingres,
542 AC_HELP_STRING([--with-ingres@<:@=DIR@:>@], [Include Ingres support. DIR is the Ingres base install directory, default is to search through a number of common places for the Ingres files.]),
543 [
544   if test "$withval" != "no"; then
545      if test "$withval" = "yes"; then
546         if test -f ${II_SYSTEM}/files/eqdefc.h; then
547            INGRES_INCDIR=${II_SYSTEM}/files
548            INGRES_LIBDIR=${II_SYSTEM}/lib
549            INGRES_BINDIR=${II_SYSTEM}/bin
550         elif test -f ${II_SYSTEM}/ingres/files/eqdefc.h; then
551            INGRES_INCDIR=${II_SYSTEM}/ingres/files
552            INGRES_LIBDIR=${II_SYSTEM}/ingres/lib
553            INGRES_BINDIR=${II_SYSTEM}/ingres/bin      
554         else
555            AC_MSG_RESULT(no)
556            AC_MSG_ERROR(Unable to find eqdefc.h in standard locations)
557         fi
558      else
559         if test -f $withval/files/eqdefc.h; then
560            INGRES_INCDIR=$withval/files
561            INGRES_LIBDIR=$withval/lib
562            INGRES_BINDIR=$withval/bin
563         else
564            AC_MSG_RESULT(no)
565            AC_MSG_ERROR(Invalid Ingres directory $withval - unable to find Ingres headers under $withval)
566         fi
567      fi
568      INGRES_INCLUDE=-I$INGRES_INCDIR
569      if test x$use_libtool != xno; then
570         INGRES_LIBS="-R $INGRES_LIBDIR -L$INGRES_LIBDIR -lq.1 -lcompat.1 -lframe.1"
571      else
572         INGRES_LIBS="-L$INGRES_LIBDIR -lq.1 -lcompat.1 -lframe.1"
573      fi
574      DB_LIBS="${DB_LIBS} ${INGRES_LIBS}"
575      AC_DEFINE(HAVE_INGRES, 1, [Set if have Ingres Database])
576      AC_MSG_RESULT(yes)
577
578      if test -z "${db_backends}"; then
579          db_backends="Ingres"
580      else
581          db_backends="${db_backends} Ingres"
582      fi
583      if test -z "${DB_BACKENDS}"; then
584          DB_BACKENDS="ingres"
585      else
586          DB_BACKENDS="${DB_BACKENDS} ingres"
587      fi
588   else
589      AC_MSG_RESULT(no)
590   fi
591 ],[
592   AC_MSG_RESULT(no)
593 ])
594
595 AC_SUBST(INGRES_LIBS)
596 AC_SUBST(INGRES_INCLUDE)
597 AC_SUBST(INGRES_BINDIR)
598 ])
599
600 AC_DEFUN([BA_CHECK_SQLITE3_DB],
601 [
602 AC_MSG_CHECKING(for SQLite3 support)
603 AC_ARG_WITH(sqlite3,
604 AC_HELP_STRING([--with-sqlite3@<:@=DIR@:>@], [Include SQLite3 support. DIR is the SQLite3 base install directory, default is to search through a number of common places for the SQLite3 files.]),
605 [
606   if test "$withval" != "no"; then
607      if test "$withval" = "yes"; then
608         if test -f /usr/local/include/sqlite3.h; then
609            SQLITE_INCDIR=/usr/local/include
610            if test -d /usr/local/lib64; then
611               SQLITE_LIBDIR=/usr/local/lib64
612            else
613               SQLITE_LIBDIR=/usr/local/lib
614            fi
615            SQLITE_BINDIR=/usr/local/bin
616         elif test -f /usr/include/sqlite3.h; then
617            SQLITE_INCDIR=/usr/include
618            if test -d /usr/lib64; then
619               SQLITE_LIBDIR=/usr/lib64
620            else
621               SQLITE_LIBDIR=/usr/lib
622            fi
623            SQLITE_BINDIR=/usr/bin      
624         elif test -f $prefix/include/sqlite3.h; then
625            SQLITE_INCDIR=$prefix/include
626            if test -d $prefix/lib64; then
627               SQLITE_LIBDIR=$prefix/lib64
628            else
629               SQLITE_LIBDIR=$prefix/lib
630            fi
631            SQLITE_BINDIR=$prefix/bin      
632         else
633            AC_MSG_RESULT(no)
634            AC_MSG_ERROR(Unable to find sqlite3.h in standard locations)
635         fi
636      else
637         if test -f $withval/sqlite3.h; then
638            SQLITE_INCDIR=$withval
639            SQLITE_LIBDIR=$withval
640            SQLITE_BINDIR=$withval
641         elif test -f $withval/include/sqlite3.h; then
642            SQLITE_INCDIR=$withval/include
643            if test -d $withval/lib64; then
644               SQLITE_LIBDIR=$withval/lib64
645            else
646               SQLITE_LIBDIR=$withval/lib
647            fi
648            SQLITE_BINDIR=$withval/bin
649         else
650            AC_MSG_RESULT(no)
651            AC_MSG_ERROR(Invalid SQLite3 directory $withval - unable to find sqlite3.h under $withval)
652         fi
653      fi
654      SQLITE_INCLUDE=-I$SQLITE_INCDIR
655      if test x$use_libtool != xno; then
656         SQLITE_LIBS="-R $SQLITE_LIBDIR -L$SQLITE_LIBDIR -lsqlite3"
657      else
658         SQLITE_LIBS="-L$SQLITE_LIBDIR -lsqlite3"
659      fi
660      SQLITE_LFLAGS="-L$SQLITE_LIBDIR -lsqlite3"
661      SQLITE_LIB=$SQLITE_LIBDIR/libsqlite3.a
662      DB_LIBS="${DB_LIBS} ${SQLITE_LIBS}"
663
664      AC_DEFINE(HAVE_SQLITE3, 1, [Set if you have an SQLite3 Database])
665      AC_MSG_RESULT(yes)
666
667      if test -z "${db_backends}"; then
668          db_backends="SQLite3"
669      else
670          db_backends="${db_backends} SQLite3"
671      fi
672      if test -z "${DB_BACKENDS}"; then
673          DB_BACKENDS="sqlite3"
674      else
675          DB_BACKENDS="${DB_BACKENDS} sqlite3"
676      fi
677   else
678      AC_MSG_RESULT(no)
679   fi
680 ],[
681   AC_MSG_RESULT(no)
682 ])
683 AC_SUBST(SQLITE_LIBS)
684 AC_SUBST(SQLITE_INCLUDE)
685 AC_SUBST(SQLITE_BINDIR)
686   
687 ])
688
689
690 AC_DEFUN([BA_CHECK_POSTGRESQL_DB],
691 [
692 AC_MSG_CHECKING(for PostgreSQL support)
693 AC_ARG_WITH(postgresql,
694 AC_HELP_STRING([--with-postgresql@<:@=DIR@:>@], [Include PostgreSQL support. DIR is the PostgreSQL base install directory, @<:@default=/usr/local/pgsql@:>@]),
695 [
696   if test "$withval" != "no"; then
697       if test "$withval" = "yes"; then
698           PG_CONFIG=`which pg_config`
699           if test -n "$PG_CONFIG"; then
700               POSTGRESQL_INCDIR=`"$PG_CONFIG" --includedir`
701               POSTGRESQL_LIBDIR=`"$PG_CONFIG" --libdir`
702               POSTGRESQL_BINDIR=`"$PG_CONFIG" --bindir`
703           elif test -f /usr/local/include/libpq-fe.h; then
704               POSTGRESQL_INCDIR=/usr/local/include
705               if test -d /usr/local/lib64; then
706                  POSTGRESQL_LIBDIR=/usr/local/lib64
707               else
708                  POSTGRESQL_LIBDIR=/usr/local/lib
709               fi
710               POSTGRESQL_BINDIR=/usr/local/bin
711           elif test -f /usr/include/libpq-fe.h; then
712               POSTGRESQL_INCDIR=/usr/include
713               if test -d /usr/lib64; then
714                  POSTGRESQL_LIBDIR=/usr/lib64
715               else
716                  POSTGRESQL_LIBDIR=/usr/lib
717               fi
718               POSTGRESQL_BINDIR=/usr/bin
719           elif test -f /usr/include/pgsql/libpq-fe.h; then
720               POSTGRESQL_INCDIR=/usr/include/pgsql
721               if test -d /usr/lib64/pgsql; then
722                  POSTGRESQL_LIBDIR=/usr/lib64/pgsql
723               else
724                  POSTGRESQL_LIBDIR=/usr/lib/pgsql
725               fi
726               POSTGRESQL_BINDIR=/usr/bin
727           elif test -f /usr/include/postgresql/libpq-fe.h; then
728               POSTGRESQL_INCDIR=/usr/include/postgresql
729               if test -d /usr/lib64/postgresql; then
730                  POSTGRESQL_LIBDIR=/usr/lib64/postgresql
731               else
732                  POSTGRESQL_LIBDIR=/usr/lib/postgresql
733               fi
734               POSTGRESQL_BINDIR=/usr/bin
735           else
736               AC_MSG_RESULT(no)
737               AC_MSG_ERROR(Unable to find libpq-fe.h in standard locations)
738           fi
739       elif test -f $withval/include/libpq-fe.h; then
740           POSTGRESQL_INCDIR=$withval/include
741           POSTGRESQL_LIBDIR=$withval/lib
742           POSTGRESQL_BINDIR=$withval/bin
743       elif test -f $withval/include/postgresql/libpq-fe.h; then
744           POSTGRESQL_INCDIR=$withval/include/postgresql
745           if test -d $withval/lib64; then
746               POSTGRESQL_LIBDIR=$withval/lib64
747           else
748               POSTGRESQL_LIBDIR=$withval/lib
749           fi
750           POSTGRESQL_BINDIR=$withval/bin
751       else
752           AC_MSG_RESULT(no)
753           AC_MSG_ERROR(Invalid PostgreSQL directory $withval - unable to find libpq-fe.h under $withval)
754       fi
755      AC_DEFINE(HAVE_POSTGRESQL, 1, [Set if you have an PostgreSQL Database])
756      AC_MSG_RESULT(yes)
757
758      POSTGRESQL_INCLUDE=-I$POSTGRESQL_INCDIR
759      if test x$use_libtool != xno; then
760         POSTGRESQL_LIBS="-R $POSTGRESQL_LIBDIR -L$POSTGRESQL_LIBDIR -lpq"
761      else
762         POSTGRESQL_LIBS="-L$POSTGRESQL_LIBDIR -lpq"
763      fi
764      AC_CHECK_FUNC(crypt, , AC_CHECK_LIB(crypt, crypt, [POSTGRESQL_LIBS="$POSTGRESQL_LIBS -lcrypt"]))
765      if test x$use_libtool != xno; then
766         POSTGRESQL_LFLAGS=`echo ${POSTGRESQL_LIBS} | sed -e "s#-R $POSTGRESQL_LIBDIR##"`
767      else
768         POSTGRESQL_LFLAGS="${POSTGRESQL_LIBS}"
769      fi
770      POSTGRESQL_LIB=$POSTGRESQL_LIBDIR/libpq.a
771      DB_LIBS="${DB_LIBS} ${POSTGRESQL_LIBS}"
772
773      if test -z "${db_backends}"; then
774          db_backends="PostgreSQL"
775      else
776          db_backends="${db_backends} PostgreSQL"
777      fi
778      if test -z "${DB_BACKENDS}"; then
779          DB_BACKENDS="postgresql"
780      else
781          DB_BACKENDS="${DB_BACKENDS} postgresql"
782      fi
783   else
784      AC_MSG_RESULT(no)
785   fi
786 ],[
787   AC_MSG_RESULT(no)
788 ])
789 AC_SUBST(POSTGRESQL_LIBS)
790 AC_SUBST(POSTGRESQL_INCLUDE)
791 AC_SUBST(POSTGRESQL_BINDIR)
792
793 ])
794
795 AC_DEFUN([AM_CONDITIONAL],
796 [AC_SUBST($1_TRUE)
797 AC_SUBST($1_FALSE)
798 if $2; then
799   $1_TRUE=
800   $1_FALSE='#'
801 else
802   $1_TRUE='#'
803   $1_FALSE=
804 fi])