]> git.sur5r.net Git - bacula/bacula/blob - bacula/autoconf/aclocal.m4
Rewrite spool error cod + level keyword for estimate
[bacula/bacula] / bacula / autoconf / aclocal.m4
1 dnl
2 dnl =========  Large File Support ==============
3 dnl By default, many hosts won't let programs access large files;
4 dnl one must use special compiler options to get large-file access to work.
5 dnl For more details about this brain damage please see:
6 dnl http://www.sas.com/standards/large.file/x_open.20Mar96.html
7
8 dnl Written by Paul Eggert <eggert@twinsun.com>.
9
10 dnl Internal subroutine of AC_SYS_LARGEFILE.
11 dnl AC_SYS_LARGEFILE_FLAGS(FLAGSNAME)
12 AC_DEFUN(AC_SYS_LARGEFILE_FLAGS,
13   [AC_CACHE_CHECK([for $1 value to request large file support],
14      ac_cv_sys_largefile_$1,
15      [ac_cv_sys_largefile_$1=`($GETCONF LFS_$1) 2>/dev/null` || {
16         ac_cv_sys_largefile_$1=no
17         ifelse($1, CFLAGS,
18           [case "$host_os" in
19            # IRIX 6.2 and later require cc -n32.
20 changequote(, )dnl
21            irix6.[2-9]* | irix6.1[0-9]* | irix[7-9].* | irix[1-9][0-9]*)
22 changequote([, ])dnl
23              if test "$GCC" != yes; then
24                ac_cv_sys_largefile_CFLAGS=-n32
25              fi
26              ac_save_CC="$CC"
27              CC="$CC $ac_cv_sys_largefile_CFLAGS"
28              AC_TRY_LINK(, , , ac_cv_sys_largefile_CFLAGS=no)
29              CC="$ac_save_CC"
30            esac])
31       }])])
32
33 dnl Internal subroutine of AC_SYS_LARGEFILE.
34 dnl AC_SYS_LARGEFILE_SPACE_APPEND(VAR, VAL)
35 AC_DEFUN(AC_SYS_LARGEFILE_SPACE_APPEND,
36   [case $2 in
37    no) ;;
38    ?*)
39      case "[$]$1" in
40      '') $1=$2 ;;
41      *) $1=[$]$1' '$2 ;;
42      esac ;;
43    esac])
44
45 dnl Internal subroutine of AC_SYS_LARGEFILE.
46 dnl AC_SYS_LARGEFILE_MACRO_VALUE(C-MACRO, CACHE-VAR, COMMENT, CODE-TO-SET-DEFAULT)
47 AC_DEFUN(AC_SYS_LARGEFILE_MACRO_VALUE,
48   [AC_CACHE_CHECK([for $1], $2,
49      [$2=no
50 changequote(, )dnl
51       $4
52       for ac_flag in $ac_cv_sys_largefile_CFLAGS no; do
53         case "$ac_flag" in
54         -D$1)
55           $2=1 ;;
56         -D$1=*)
57           $2=`expr " $ac_flag" : '[^=]*=\(.*\)'` ;;
58         esac
59       done
60 changequote([, ])dnl
61       ])
62    if test "[$]$2" != no; then
63      AC_DEFINE_UNQUOTED([$1], [$]$2, [$3])
64    fi])
65
66 AC_DEFUN(AC_BAC_LARGEFILE,
67   [AC_REQUIRE([AC_CANONICAL_HOST])
68    AC_ARG_ENABLE(largefile,
69      [  --disable-largefile     omit support for large files])
70    if test "$enable_largefile" != no; then
71      AC_CHECK_TOOL(GETCONF, getconf)
72      AC_SYS_LARGEFILE_FLAGS(CFLAGS)
73      AC_SYS_LARGEFILE_FLAGS(LDFLAGS)
74      AC_SYS_LARGEFILE_FLAGS(LIBS)
75
76      for ac_flag in $ac_cv_sys_largefile_CFLAGS no; do
77        case "$ac_flag" in
78        no) ;;
79        -D_FILE_OFFSET_BITS=*) ;;
80        -D_LARGEFILE_SOURCE | -D_LARGEFILE_SOURCE=*) ;;
81        -D_LARGE_FILES | -D_LARGE_FILES=*) ;;
82        -D?* | -I?*)
83          AC_SYS_LARGEFILE_SPACE_APPEND(CPPFLAGS, "$ac_flag") ;;
84        *)
85          AC_SYS_LARGEFILE_SPACE_APPEND(CFLAGS, "$ac_flag") ;;
86        esac
87      done
88      AC_SYS_LARGEFILE_SPACE_APPEND(LDFLAGS, "$ac_cv_sys_largefile_LDFLAGS")
89      AC_SYS_LARGEFILE_SPACE_APPEND(LIBS, "$ac_cv_sys_largefile_LIBS")
90      AC_SYS_LARGEFILE_MACRO_VALUE(_FILE_OFFSET_BITS,
91        ac_cv_sys_file_offset_bits,
92        [Number of bits in a file offset, on hosts where this is settable.],
93        [case "$host_os" in
94         # HP-UX 10.20 and later
95         hpux10.[2-9][0-9]* | hpux1[1-9]* | hpux[2-9][0-9]*)
96           ac_cv_sys_file_offset_bits=64 ;;
97         esac])
98      AC_SYS_LARGEFILE_MACRO_VALUE(_LARGEFILE_SOURCE,
99        ac_cv_sys_largefile_source,
100        [Define to make fseeko etc. visible, on some hosts.],
101        [case "$host_os" in
102         # HP-UX 10.20 and later
103         hpux10.[2-9][0-9]* | hpux1[1-9]* | hpux[2-9][0-9]*)
104           ac_cv_sys_largefile_source=1 ;;
105         esac])
106      AC_SYS_LARGEFILE_MACRO_VALUE(_LARGE_FILES,
107        ac_cv_sys_large_files,
108        [Define for large files, on AIX-style hosts.],
109        [case "$host_os" in
110         # AIX 4.2 and later
111         aix4.[2-9]* | aix4.1[0-9]* | aix[5-9].* | aix[1-9][0-9]*)
112           ac_cv_sys_large_files=1 ;;
113         esac])
114    fi
115   ])
116 dnl ==========================================================
117
118 dnl Check type of signal routines (posix, 4.2bsd, 4.1bsd or v7)
119 AC_DEFUN(SIGNAL_CHECK,
120 [AC_REQUIRE([AC_TYPE_SIGNAL])
121 AC_MSG_CHECKING(for type of signal functions)
122 AC_CACHE_VAL(bash_cv_signal_vintage,
123 [
124   AC_TRY_LINK([#include <signal.h>],[
125     sigset_t ss;
126     struct sigaction sa;
127     sigemptyset(&ss); sigsuspend(&ss);
128     sigaction(SIGINT, &sa, (struct sigaction *) 0);
129     sigprocmask(SIG_BLOCK, &ss, (sigset_t *) 0);
130   ], bash_cv_signal_vintage=posix,
131   [
132     AC_TRY_LINK([#include <signal.h>], [
133         int mask = sigmask(SIGINT);
134         sigsetmask(mask); sigblock(mask); sigpause(mask);
135     ], bash_cv_signal_vintage=4.2bsd,
136     [
137       AC_TRY_LINK([
138         #include <signal.h>
139         RETSIGTYPE foo() { }], [
140                 int mask = sigmask(SIGINT);
141                 sigset(SIGINT, foo); sigrelse(SIGINT);
142                 sighold(SIGINT); sigpause(SIGINT);
143         ], bash_cv_signal_vintage=svr3, bash_cv_signal_vintage=v7
144     )]
145   )]
146 )
147 ])
148 AC_MSG_RESULT($bash_cv_signal_vintage)
149 if test "$bash_cv_signal_vintage" = posix; then
150 AC_DEFINE(HAVE_POSIX_SIGNALS)
151 elif test "$bash_cv_signal_vintage" = "4.2bsd"; then
152 AC_DEFINE(HAVE_BSD_SIGNALS)
153 elif test "$bash_cv_signal_vintage" = svr3; then
154 AC_DEFINE(HAVE_USG_SIGHOLD)
155 fi
156 ])
157
158 AC_DEFUN(BA_CONDITIONAL,
159 [AC_SUBST($1_TRUE)
160 AC_SUBST($1_FALSE)
161 if $2; then
162   $1_TRUE=
163   $1_FALSE='#'
164 else
165   $1_TRUE='#'
166   $1_FALSE=
167 fi])
168
169
170 AC_DEFUN(BA_CHECK_OPSYS,
171 [AC_MSG_CHECKING(for Operating System)
172 AC_CYGWIN
173 if test $HAVE_UNAME=yes -a x`uname -s` = xSunOS
174 then
175         BA_CONDITIONAL(HAVE_SUN_OS, $TRUEPRG)
176         AC_DEFINE(HAVE_SUN_OS)
177 else
178         BA_CONDITIONAL(HAVE_SUN_OS, $FALSEPRG)
179 fi
180
181 if test $HAVE_UNAME=yes -a x`uname -s` = xOSF1
182 then
183         BA_CONDITIONAL(HAVE_OSF1_OS, $TRUEPRG)
184         AC_DEFINE(HAVE_OSF1_OS)
185 else
186         BA_CONDITIONAL(HAVE_OSF1_OS, $FALSEPRG)
187 fi
188
189 if test $HAVE_UNAME=yes -a x`uname -s` = xAIX
190 then
191         BA_CONDITIONAL(HAVE_AIX_OS, $TRUEPRG)
192         AC_DEFINE(HAVE_AIX_OS)
193 else
194         BA_CONDITIONAL(HAVE_AIX_OS, $FALSEPRG)
195 fi
196
197 if test $HAVE_UNAME=yes -a x`uname -s` = xHP-UX
198 then
199         BA_CONDITIONAL(HAVE_HPUX_OS, $TRUEPRG)
200         AC_DEFINE(HAVE_HPUX_OS)
201 else
202         BA_CONDITIONAL(HAVE_HPUX_OS, $FALSEPRG)
203 fi
204
205 if test $HAVE_UNAME=yes -a x`uname -s` = xLinux
206 then
207         BA_CONDITIONAL(HAVE_LINUX_OS, $TRUEPRG)
208         AC_DEFINE(HAVE_LINUX_OS)
209 else
210         BA_CONDITIONAL(HAVE_LINUX_OS, $FALSEPRG)
211 fi
212
213 if test $HAVE_UNAME=yes -a x`uname -s` = xFreeBSD
214 then
215         BA_CONDITIONAL(HAVE_FREEBSD_OS, $TRUEPRG)
216         AC_DEFINE(HAVE_FREEBSD_OS)
217 else
218         BA_CONDITIONAL(HAVE_FREEBSD_OS, $FALSEPRG)
219 fi
220
221 if test $HAVE_UNAME=yes -a x`uname -s` = xNetBSD
222 then
223         BA_CONDITIONAL(HAVE_NETBSD_OS, $TRUEPRG)
224         AC_DEFINE(HAVE_NETBSD_OS)
225 else
226         BA_CONDITIONAL(HAVE_NETBSD_OS, $FALSEPRG)
227 fi
228
229 if test $HAVE_UNAME=yes -a x`uname -s` = xOpenBSD
230 then
231         BA_CONDITIONAL(HAVE_OPENBSD_OS, $TRUEPRG)
232         AC_DEFINE(HAVE_OPENBSD_OS)
233 else
234         BA_CONDITIONAL(HAVE_OPENBSD_OS, $FALSEPRG)
235 fi
236
237 if test $HAVE_UNAME=yes -a x`uname -s` = xBSD/OS
238 then
239         BA_CONDITIONAL(HAVE_BSDI_OS, $TRUEPRG)
240         AC_DEFINE(HAVE_BSDI_OS)
241 else
242         BA_CONDITIONAL(HAVE_BSDI_OS, $FALSEPRG)
243 fi
244
245 if test $HAVE_UNAME=yes -a x`uname -s` = xSGI
246 then
247         BA_CONDITIONAL(HAVE_SGI_OS, $TRUEPRG)
248         AC_DEFINE(HAVE_SGI_OS)
249 else
250         BA_CONDITIONAL(HAVE_SGI_OS, $FALSEPRG)
251 fi
252
253 if test $HAVE_UNAME=yes -a x`uname -s` = xIRIX
254 then
255         BA_CONDITIONAL(HAVE_IRIX_OS, $TRUEPRG)
256         AC_DEFINE(HAVE_IRIX_OS)
257 else
258         BA_CONDITIONAL(HAVE_IRIX_OS, $FALSEPRG)
259 fi
260
261 if test $HAVE_UNAME=yes -a x`uname -s` = xDarwin
262 then
263     AM_CONDITIONAL(HAVE_DARWIN_OS, $TRUEPRG)
264     AC_DEFINE(HAVE_DARWIN_OS)
265 else
266     AM_CONDITIONAL(HAVE_DARWIN_OS, $FALSEPRG)
267 fi
268
269 AC_MSG_RESULT(" ")
270 ])
271
272 AC_DEFUN(BA_CHECK_OPSYS_DISTNAME,
273 [AC_MSG_CHECKING(for Operating System Distribution)
274 if test "x$DISTNAME" != "x"
275 then
276         echo "distname set to $DISTNAME"
277 elif test $HAVE_UNAME=yes -a x`uname -s` = xOSF1
278 then
279         DISTNAME=alpha
280 elif test $HAVE_UNAME=yes -a x`uname -s` = xAIX
281 then
282         DISTNAME=aix
283 elif test $HAVE_UNAME=yes -a x`uname -s` = xHP-UX
284 then
285         DISTNAME=hpux
286 elif test $HAVE_UNAME=yes -a x`uname -s` = xSunOS
287 then
288         DISTNAME=solaris
289 elif test $HAVE_UNAME=yes -a x`uname -s` = xFreeBSD
290 then
291         DISTNAME=freebsd
292 elif test $HAVE_UNAME=yes -a x`uname -s` = xNetBSD
293 then
294         DISTNAME=netbsd
295 elif test $HAVE_UNAME=yes -a x`uname -s` = xOpenBSD
296 then
297         DISTNAME=openbsd
298 elif test $HAVE_UNAME=yes -a x`uname -s` = xIRIX
299 then
300         DISTNAME=irix
301 elif test $HAVE_UNAME=yes -a x`uname -s` = xBSD/OS
302 then
303         DISTNAME=bsdi
304 elif test -f /etc/SuSE-release
305 then
306         DISTNAME=suse
307 elif test -d /etc/SuSEconfig
308 then
309         DISTNAME=suse5
310 elif test -f /etc/mandrake-release
311 then
312         DISTNAME=mandrake
313 elif test -f /etc/whitebox-release
314 then
315        DISTNAME=redhat
316 elif test -f /etc/redhat-release
317 then
318         DISTNAME=redhat
319 elif test -f /etc/gentoo-release
320 then
321         DISTNAME=gentoo
322 elif test -f /etc/debian_version
323 then
324         DISTNAME=debian
325 elif test -f /etc/slackware-version
326 then
327         DISTNAME=slackware
328 elif test $HAVE_UNAME=yes -a x`uname -s` = xDarwin
329 then
330     DISTNAME=darwin
331 elif test -f /etc/engarde-version
332 then
333         DISTNAME=engarde
334 elif test "$CYGWIN" = yes
335 then
336         DISTNAME=cygwin
337         AC_DEFINE(HAVE_CYGWIN)
338 else
339         DISTNAME=unknown
340 fi
341 AC_MSG_RESULT(" ")
342 ])
343
344 AC_DEFUN(BA_CHECK_MYSQL_DB,
345 [
346 db_found=no
347 AC_MSG_CHECKING(for MySQL support)
348 AC_ARG_WITH(mysql,
349 [
350   --with-mysql[=DIR]      Include MySQL support.  DIR is the MySQL base
351                           install directory, default is to search through
352                           a number of common places for the MySQL files.],
353 [
354   if test "$withval" != "no"; then
355         if test "$withval" = "yes"; then
356                 if test -f /usr/local/mysql/include/mysql/mysql.h; then
357                         MYSQL_INCDIR=/usr/local/mysql/include/mysql
358                         MYSQL_LIBDIR=/usr/local/mysql/lib/mysql
359                         MYSQL_BINDIR=/usr/local/mysql/bin
360                 elif test -f /usr/include/mysql/mysql.h; then
361                         MYSQL_INCDIR=/usr/include/mysql
362                         MYSQL_LIBDIR=/usr/lib/mysql
363                         MYSQL_BINDIR=/usr/bin      
364                 elif test -f /usr/include/mysql.h; then
365                         MYSQL_INCDIR=/usr/include
366                         MYSQL_LIBDIR=/usr/lib
367                         MYSQL_BINDIR=/usr/bin
368                 elif test -f /usr/local/include/mysql/mysql.h; then
369                         MYSQL_INCDIR=/usr/local/include/mysql
370                         MYSQL_LIBDIR=/usr/local/lib/mysql
371                         MYSQL_BINDIR=/usr/local/bin
372                 elif test -f /usr/local/include/mysql.h; then
373                         MYSQL_INCDIR=/usr/local/include
374                         MYSQL_LIBDIR=/usr/local/lib
375                         MYSQL_BINDIR=/usr/local/bin
376                 else
377                    AC_MSG_RESULT(no)
378                    AC_MSG_ERROR(Unable to find mysql.h in standard locations)
379                 fi
380         else
381                 if test -f $withval/include/mysql/mysql.h; then
382                         MYSQL_INCDIR=$withval/include/mysql
383                         MYSQL_LIBDIR=$withval/lib/mysql
384                         MYSQL_BINDIR=$withval/bin
385                 elif test -f $withval/include/mysql.h; then
386                         MYSQL_INCDIR=$withval/include
387                         MYSQL_LIBDIR=$withval/lib
388                         MYSQL_BINDIR=$withval/bin
389                 else
390                    AC_MSG_RESULT(no)
391                    AC_MSG_ERROR(Invalid MySQL directory $withval - unable to find mysql.h under $withval)
392                 fi
393         fi
394     SQL_INCLUDE=-I$MYSQL_INCDIR
395     if test -f $MYSQL_LIBDIR/libmysqlclient_r.a; then
396        SQL_LFLAGS="-L$MYSQL_LIBDIR -lmysqlclient_r -lz"
397        AC_DEFINE(HAVE_THREAD_SAFE_MYSQL)
398     else
399        SQL_LFLAGS="-L$MYSQL_LIBDIR -lmysqlclient -lz"
400     fi
401     SQL_BINDIR=$MYSQL_BINDIR
402
403     AC_DEFINE(HAVE_MYSQL)
404     AC_MSG_RESULT(yes)
405     db_found=yes
406     support_mysql=yes
407     db_name=MySQL
408     DB_NAME=mysql
409
410   else
411         AC_MSG_RESULT(no)
412   fi
413 ],[
414     AC_MSG_RESULT(no)
415 ])
416
417 AC_ARG_WITH(embedded-mysql,
418 [
419   --with-embedded-mysql[=DIR] Include MySQL support.  DIR is the MySQL base
420                           install directory, default is to search through
421                           a number of common places for the MySQL files.],
422 [
423   if test "$withval" != "no"; then
424         if test "$withval" = "yes"; then
425                 if test -f /usr/local/mysql/include/mysql/mysql.h; then
426                         MYSQL_INCDIR=/usr/local/mysql/include/mysql
427                         MYSQL_LIBDIR=/usr/local/mysql/lib/mysql
428                         MYSQL_BINDIR=/usr/local/mysql/bin
429                 elif test -f /usr/include/mysql/mysql.h; then
430                         MYSQL_INCDIR=/usr/include/mysql
431                         MYSQL_LIBDIR=/usr/lib/mysql
432                         MYSQL_BINDIR=/usr/bin      
433                 elif test -f /usr/include/mysql.h; then
434                         MYSQL_INCDIR=/usr/include
435                         MYSQL_LIBDIR=/usr/lib
436                         MYSQL_BINDIR=/usr/bin
437                 elif test -f /usr/local/include/mysql/mysql.h; then
438                         MYSQL_INCDIR=/usr/local/include/mysql
439                         MYSQL_LIBDIR=/usr/local/lib/mysql
440                         MYSQL_BINDIR=/usr/local/bin
441                 elif test -f /usr/local/include/mysql.h; then
442                         MYSQL_INCDIR=/usr/local/include
443                         MYSQL_LIBDIR=/usr/local/lib
444                         MYSQL_BINDIR=/usr/local/bin
445                 else
446                    AC_MSG_RESULT(no)
447                    AC_MSG_ERROR(Unable to find mysql.h in standard locations)
448                 fi
449         else
450                 if test -f $withval/include/mysql/mysql.h; then
451                         MYSQL_INCDIR=$withval/include/mysql
452                         MYSQL_LIBDIR=$withval/lib/mysql
453                         MYSQL_BINDIR=$withval/bin
454                 elif test -f $withval/include/mysql.h; then
455                         MYSQL_INCDIR=$withval/include
456                         MYSQL_LIBDIR=$withval/lib
457                         MYSQL_BINDIR=$withval/bin
458                 else
459                    AC_MSG_RESULT(no)
460                    AC_MSG_ERROR(Invalid MySQL directory $withval - unable to find mysql.h under $withval)
461                 fi
462         fi
463     SQL_INCLUDE=-I$MYSQL_INCDIR
464     SQL_LFLAGS="-L$MYSQL_LIBDIR -lmysqld -lz -lm -lcrypt"
465     SQL_BINDIR=$MYSQL_BINDIR
466
467     AC_DEFINE(HAVE_MYSQL)
468     AC_DEFINE(HAVE_EMBEDDED_MYSQL)
469     AC_MSG_RESULT(yes)
470     db_found=yes
471     support_mysql=yes
472     db_name=MySQL
473     DB_NAME=mysql
474
475   else
476         AC_MSG_RESULT(no)
477   fi
478 ],[
479   AC_MSG_RESULT(no)
480 ])
481
482
483 AC_SUBST(SQL_LFLAGS)
484 AC_SUBST(SQL_INCLUDE)
485 AC_SUBST(SQL_BINDIR)
486   
487 ])
488
489
490 AC_DEFUN(BA_CHECK_SQLITE_DB,
491 [
492 db_found=no
493 AC_MSG_CHECKING(for SQLite support)
494 AC_ARG_WITH(sqlite,
495 [
496   --with-sqlite[=DIR]     Include SQLite support.  DIR is the SQLite base
497                           install directory, default is to search through
498                           a number of common places for the SQLite files.],
499 [
500   if test "$withval" != "no"; then
501         if test "$withval" = "yes"; then
502                 if test -f /usr/local/include/sqlite.h; then
503                         SQLITE_INCDIR=/usr/local/include
504                         SQLITE_LIBDIR=/usr/local/lib
505                         SQLITE_BINDIR=/usr/local/bin
506                 elif test -f /usr/include/sqlite.h; then
507                         SQLITE_INCDIR=/usr/include
508                         SQLITE_LIBDIR=/usr/lib
509                         SQLITE_BINDIR=/usr/bin      
510                 else
511                    AC_MSG_RESULT(no)
512                    AC_MSG_ERROR(Unable to find sqlite.h in standard locations)
513                 fi
514         else
515                 if test -f $withval/sqlite.h; then
516                         SQLITE_INCDIR=$withval
517                         SQLITE_LIBDIR=$withval
518                         SQLITE_BINDIR=$withval
519                 else
520                    AC_MSG_RESULT(no)
521                    AC_MSG_ERROR(Invalid SQLite directory $withval - unable to find sqlite.h under $withval)
522                 fi
523         fi
524     SQL_INCLUDE=-I$SQLITE_INCDIR
525     SQL_LFLAGS="-L$SQLITE_LIBDIR -lsqlite"
526     SQL_BINDIR=$SQLITE_BINDIR
527
528     AC_DEFINE(HAVE_SQLITE)
529     AC_MSG_RESULT(yes)
530     db_found=yes
531     support_sqlite=yes
532     db_name=SQLite
533     DB_NAME=sqlite
534
535   else
536         AC_MSG_RESULT(no)
537   fi
538 ],[
539   AC_MSG_RESULT(no)
540 ])
541 AC_SUBST(SQL_LFLAGS)
542 AC_SUBST(SQL_INCLUDE)
543 AC_SUBST(SQL_BINDIR)
544   
545 ])
546
547
548 AC_DEFUN(BA_CHECK_POSTGRESQL_DB,
549 [
550 db_found=no
551 AC_MSG_CHECKING(for PostgreSQL support)
552 AC_ARG_WITH(postgresql,
553 [  --with-postgresql[=DIR]      Include PostgreSQL support.  DIR is the PostgreSQL
554                           base install directory, defaults to /usr/local/pgsql],
555 [
556   if test "$withval" != "no"; then
557       if test "$db_found" = "yes"; then
558           AC_MSG_RESULT(error)
559           AC_MSG_ERROR("You can configure for only one database.");
560       fi
561       if test "$withval" = "yes"; then
562           if test -f /usr/local/include/libpq-fe.h; then
563               POSTGRESQL_INCDIR=/usr/local/include
564               POSTGRESQL_LIBDIR=/usr/local/lib
565               POSTGRESQL_BINDIR=/usr/local/bin
566           elif test -f /usr/include/libpq-fe.h; then
567               POSTGRESQL_INCDIR=/usr/include
568               POSTGRESQL_LIBDIR=/usr/lib
569               POSTGRESQL_BINDIR=/usr/bin
570           elif test -f /usr/include/pgsql/libpq-fe.h; then
571               POSTGRESQL_INCDIR=/usr/include/pgsql
572               POSTGRESQL_LIBDIR=/usr/lib/pgsql
573               POSTGRESQL_BINDIR=/usr/bin
574           elif test -f /usr/include/postgresql/libpq-fe.h; then
575               POSTGRESQL_INCDIR=/usr/include/postgresql
576               POSTGRESQL_LIBDIR=/usr/lib/postgresql
577               POSTGRESQL_BINDIR=/usr/bin
578           else
579               AC_MSG_RESULT(no)
580               AC_MSG_ERROR(Unable to find libpq-fe.h in standard locations)
581           fi
582       elif test -f $withval/include/libpq-fe.h; then
583           POSTGRESQL_INCDIR=$withval/include
584           POSTGRESQL_LIBDIR=$withval/lib
585           POSTGRESQL_BINDIR=$withval/bin
586       else
587           AC_MSG_RESULT(no)
588           AC_MSG_ERROR(Invalid PostgreSQL directory $withval - unable to find libpq-fe.h under $withval)
589       fi
590       POSTGRESQL_LFLAGS="-L$POSTGRESQL_LIBDIR -lpq"
591       AC_CHECK_FUNC(crypt, , AC_CHECK_LIB(crypt, crypt, [POSTGRESQL_LFLAGS="-lcrypt $POSTGRESQL_LFLAGS"]))
592       SQL_INCLUDE=-I$POSTGRESQL_INCDIR
593       SQL_LFLAGS=$POSTGRESQL_LFLAGS
594       SQL_BINDIR=$POSTGRESQL_BINDIR
595       AC_DEFINE(HAVE_POSTGRESQL)
596       AC_MSG_RESULT(yes)
597       db_found=yes
598       support_postgresql=yes
599       db_name=PostgreSQL
600       DB_NAME=postgresql
601   else
602       AC_MSG_RESULT(no)
603   fi
604 ],[
605   AC_MSG_RESULT(no)
606 ])
607 AC_SUBST(SQL_LFLAGS)
608 AC_SUBST(SQL_INCLUDE)
609 AC_SUBST(SQL_BINDIR)
610
611 ])
612
613
614
615 AC_DEFUN(BA_CHECK_SQL_DB, 
616 [AC_MSG_CHECKING(Checking for various databases)
617 dnl# --------------------------------------------------------------------------
618 dnl# CHECKING FOR VARIOUS DATABASES (thanks to UdmSearch team)
619 dnl# --------------------------------------------------------------------------
620 dnl Check for some DBMS backend
621 dnl NOTE: we can use only one backend at a time
622 AC_MSG_RESULT(" ")
623
624 db_found=no
625 db_name=none
626
627
628
629 if test x$support_mysql = xyes; then
630    cats=cats
631 fi
632
633
634 AC_MSG_CHECKING(for Berkeley DB support)
635 AC_ARG_WITH(berkeleydb,
636 [
637   --with-berkeleydb[=DIR] Include Berkeley DB support.  DIR is the Berkeley DB base
638                           install directory, default is to search through
639                           a number of common places for the DB files.],
640 [
641   if test "$withval" != "no"; then
642         if test "$withval" = "yes"; then
643                 if test -f /usr/include/db.h; then
644                         BERKELEYDB_INCDIR=/usr/include
645                         BERKELEYDB_LIBDIR=/usr/lib
646                 else
647                 AC_MSG_RESULT(no)
648                 AC_MSG_ERROR(Invalid Berkeley DB directory - unable to find db.h)
649                 fi
650         else
651                 if test -f $withval/include/db.h; then
652                         BERKELEYDB_INCDIR=$withval/include
653                         BERKELEYDBL_LIBDIR=$withval/lib
654                 else
655                 AC_MSG_RESULT(no)
656                 AC_MSG_ERROR(Invalid Berkeley DB directory - unable to find db.h under $withval)
657                 fi
658         fi
659     SQL_INCLUDE=-I$BERKELEYDB_INCDIR
660     SQL_LFLAGS="-L$BERKELEYDB_LIBDIR -ldb"
661
662     AC_DEFINE(HAVE_BERKELEY_DB)
663     AC_MSG_RESULT(yes)
664     have_db=yes
665     support_mysql=yes
666     db_name=BerkelyDB
667
668   else
669         AC_MSG_RESULT(no)
670   fi
671 ],[
672   AC_MSG_RESULT(no)
673 ])
674 AC_SUBST(SQL_LFLAGS)
675 AC_SUBST(SQL_INCLUDE)
676
677 if test x$support_berkleydb = xyes; then
678    cats=cats
679 fi
680
681
682
683
684 AC_MSG_CHECKING(for mSQL support)
685 AC_ARG_WITH(msql,
686 [  --with-msql[=DIR]       Include mSQL support.  DIR is the mSQL base
687                           install directory, defaults to /usr/local/Hughes.],
688 [
689   if test "$withval" != "no"; then
690     if test "$have_db" = "yes"; then
691         AC_MSG_RESULT(error)
692         AC_MSG_ERROR("You can configure for only one database.");
693     fi
694
695     if test "$withval" = "yes"; then
696         MSQL_INCDIR=/usr/local/Hughes/include
697         MSQL_LIBDIR=/usr/local/Hughes/lib
698     else
699         MSQL_INCDIR=$withval/include
700         MSQL_LIBDIR=$withval/lib
701     fi
702     MSQL_INCLUDE=-I$MSQL_INCDIR
703     MSQL_LFLAGS="-L$MSQL_LIBDIR -lmsql"
704
705     AC_DEFINE(HAVE_MSQL)
706     AC_MSG_RESULT(yes)
707     have_db=yes
708   else
709         AC_MSG_RESULT(no)
710   fi
711 ],[
712   AC_MSG_RESULT(no)
713 ])
714 AC_SUBST(MSQL_LFLAGS)
715 AC_SUBST(MSQL_INCLUDE)
716
717
718 AC_MSG_CHECKING(for iODBC support)
719 AC_ARG_WITH(iodbc,
720 [  --with-iodbc[=DIR]      Include iODBC support.  DIR is the iODBC base
721                           install directory, defaults to /usr/local.],
722 [
723         if test "$withval" != "no"; then
724             if test "$have_db" = "yes"; then
725                 AC_MSG_RESULT(error)
726                 AC_MSG_ERROR("You can configure for only one database.");
727             fi
728         fi
729         
730         if test "$withval" = "yes"; then
731                 withval=/usr/local
732         fi
733
734         if test "$withval" != "no"; then
735                 if test -f $withval/include/isql.h; then
736                         IODBC_INCDIR=$withval/include
737                         IODBC_LIBDIR=$withval/lib
738                 else
739                         AC_MSG_RESULT(no)
740                         AC_MSG_ERROR(Invalid iODBC directory - unable to find isql.h)
741                 fi
742                 IODBC_LFLAGS="-L$IODBC_LIBDIR -liodbc"
743                 IODBC_INCLUDE=-I$IODBC_INCDIR
744                 AC_DEFINE(HAVE_IODBC)
745                 AC_MSG_RESULT(yes)
746                 have_db=yes
747         fi
748 ],[
749         AC_MSG_RESULT(no)
750 ])
751 AC_SUBST(IODBC_LFLAGS)
752 AC_SUBST(IODBC_INCLUDE)
753
754
755 AC_MSG_CHECKING(for unixODBC support)
756 AC_ARG_WITH(unixODBC,
757 [  --with-unixODBC[=DIR]   Include unixODBC support.  DIR is the unixODBC base
758                           install directory, defaults to /usr/local.],
759 [
760         if test "$withval" != "no"; then
761             if test "$have_db" = "yes"; then
762                 AC_MSG_RESULT(error)
763                 AC_MSG_ERROR("You can configure for only one database.");
764             fi
765         fi
766         
767         if test "$withval" = "yes"; then
768                 withval=/usr/local
769         fi
770
771         if test "$withval" != "no"; then
772                 if test -f $withval/include/sql.h; then
773                         UNIXODBC_INCDIR=$withval/include
774                         UNIXODBC_LIBDIR=$withval/lib
775                 else
776                         AC_MSG_RESULT(no)
777                         AC_MSG_ERROR(Invalid unixODBC directory - unable to find sql.h)
778                 fi
779                 UNIXODBC_LFLAGS="-L$UNIXODBC_LIBDIR -lodbc"
780                 UNIXODBC_INCLUDE=-I$UNIXODBC_INCDIR
781                 AC_DEFINE(HAVE_UNIXODBC)
782                 AC_MSG_RESULT(yes)
783                 have_db=yes
784         fi
785 ],[
786         AC_MSG_RESULT(no)
787 ])
788 AC_SUBST(UNIXODBC_LFLAGS)
789 AC_SUBST(UNIXODBC_INCLUDE)
790
791
792 AC_MSG_CHECKING(for Solid support)
793 AC_ARG_WITH(solid,
794 [  --with-solid[=DIR]      Include Solid support.  DIR is the Solid base
795                           install directory, defaults to /usr/local.],
796 [
797         if test "$withval" != "no"; then
798             if test "$have_db" = "yes"; then
799                 AC_MSG_RESULT(error)
800                 AC_MSG_ERROR("You can configure for only one database.");
801             fi
802         fi
803
804         if test "$withval" = "yes"; then
805                 withval=/usr/local
806         fi
807
808         if test "$withval" != "no"; then
809                 if test -f $withval/include/cli0cli.h; then
810                         SOLID_INCDIR=$withval/include
811                         SOLID_LIBDIR=$withval/lib
812                 else
813                         AC_MSG_RESULT(no)
814                         AC_MSG_ERROR(Invalid Solid directory - unable to find cli0cli.h)
815                 fi
816                 SOLID_LFLAGS="-L$SOLID_LIBDIR -lsolcli"
817                 SOLID_INCLUDE="-I$SOLID_INCDIR"
818                 AC_DEFINE(HAVE_SOLID)
819                 AC_MSG_RESULT(yes)
820                 have_db=yes
821         fi
822 ],[
823         AC_MSG_RESULT(no)
824 ])
825 AC_SUBST(SOLID_LFLAGS)
826 AC_SUBST(SOLID_INCLUDE)
827
828 AC_MSG_CHECKING(for OpenLink ODBC support)
829 AC_ARG_WITH(openlink,
830 [  --with-openlink[=DIR]   Include OpenLink ODBC support. 
831                           DIR is the base OpenLink ODBC install directory],
832 [
833   if test "$withval" != "no"; then
834         if test "$withval" = "yes"; then
835
836                 if test "$have_db" = "yes"; then
837                         AC_MSG_RESULT(error)
838                         AC_MSG_ERROR("You can configure for only one database.");
839                 fi
840
841                 if test -f /usr/local/virtuoso-ent/odbcsdk/include/isql.h; then
842                         VIRT_INCDIR=/usr/local/virtuoso-ent/odbcsdk/include/
843                         VIRT_LIBDIR=/usr/local/virtuoso-ent/odbcsdk/lib/
844                 elif test -f /usr/local/virtuoso-lite/odbcsdk/include/isql.h; then
845                         VIRT_INCDIR=/usr/local/virtuoso-lite/odbcsdk/include/
846                         VIRT_LIBDIR=/usr/local/virtuoso-lite/odbcsdk/lib/
847                 elif test -f /usr/local/virtuoso/odbcsdk/include/isql.h; then
848                         VIRT_INCDIR=/usr/local/virtuoso/odbcsdk/include/
849                         VIRT_LIBDIR=/usr/local/virtuoso/odbcsdk/lib/
850                 else
851                 AC_MSG_RESULT(no)
852                 AC_MSG_ERROR(Invalid OpenLink ODBC directory - unable to find isql.h)
853                 fi
854         else
855                 if test -f $withval/odbcsdk/include/isql.h; then
856                         VIRT_INCDIR=$withval/odbcsdk/include/
857                         VIRT_LIBDIR=$withval/odbcsdk/lib/
858                 elif test -f $withval/include/isql.h; then
859                         VIRT_INCDIR=$withval/include/
860                         VIRT_LIBDIR=$withval/lib/
861                 else
862                 AC_MSG_RESULT(no)
863                 AC_MSG_ERROR(Invalid OpenLink ODBC directory - unable to find isql.h under $withval)
864                 fi
865         fi
866     VIRT_INCLUDE=-I$VIRT_INCDIR
867     VIRT_LFLAGS="-L$VIRT_LIBDIR -liodbc"
868
869     AC_DEFINE(HAVE_VIRT)
870     AC_MSG_RESULT(yes)
871     have_db=yes
872
873   else
874         AC_MSG_RESULT(no)
875   fi
876 ],[
877   AC_MSG_RESULT(no)
878 ])
879 AC_SUBST(VIRT_LFLAGS)
880 AC_SUBST(VIRT_INCLUDE)
881
882
883 AC_MSG_CHECKING(for EasySoft ODBC support)
884 AC_ARG_WITH(easysoft,
885 [  --with-easysoft[=DIR]   Include EasySoft ODBC support. 
886                           DIR is the base EasySoft ODBC install directory],
887 [
888   if test "$withval" != "no"; then
889         if test "$withval" = "yes"; then
890
891                 if test "$have_db" = "yes"; then
892                         AC_MSG_RESULT(error)
893                         AC_MSG_ERROR("You can configure for only one database.");
894                 fi
895
896                 if test -f /usr/local/easysoft/oob/client/include/sql.h; then
897                         EASYSOFT_INCDIR=/usr/local/easysoft/oob/client/include/
898                         EASYSOFT_LFLAGS="-L/usr/local/easysoft/oob/client/lib/ -L/usr/local/easysoft/lib"
899                 else
900                 AC_MSG_RESULT(no)
901                 AC_MSG_ERROR(Invalid EasySoft ODBC directory - unable to find sql.h)
902                 fi
903         else
904                 if test -f $withval/easysoft/oob/client/include/sql.h; then
905                         EASYSOFT_INCDIR=$withval/easysoft/oob/client/include/
906                         EASYSOFT_LFLAGS="-L$withval/easysoft/oob/client/lib/ -L$withval/easysoft/lib"
907                 else
908                 AC_MSG_RESULT(no)
909                 AC_MSG_ERROR(Invalid EasySoft ODBC directory - unable to find sql.h under $withval)
910                 fi
911         fi
912     EASYSOFT_INCLUDE=-I$EASYSOFT_INCDIR
913     EASYSOFT_LFLAGS="$EASYSOFT_LFLAGS -lesoobclient -lesrpc -lsupport -lextra"
914
915     AC_DEFINE(HAVE_EASYSOFT)
916     AC_MSG_RESULT(yes)
917     have_db=yes
918
919   else
920         AC_MSG_RESULT(no)
921   fi
922 ],[
923   AC_MSG_RESULT(no)
924 ])
925 AC_SUBST(EASYSOFT_LFLAGS)
926 AC_SUBST(EASYSOFT_INCLUDE)
927
928
929
930 AC_MSG_CHECKING(for InterBase support)
931 AC_ARG_WITH(ibase,
932 [  --with-ibase[=DIR]      Include InterBase support.  DIR is the InterBase
933                           install directory, defaults to /usr/interbase.],
934 [
935         if test "$withval" != "no"; then
936             if test "$have_db" = "yes"; then
937                 AC_MSG_RESULT(error)
938                 AC_MSG_ERROR("You can configure for only one database.");
939             fi
940         fi
941         
942         if test "$withval" = "yes"; then
943                 withval=/usr/interbase
944         fi
945
946         if test "$withval" != "no"; then
947                 if test -f $withval/include/ibase.h; then
948                         IBASE_INCDIR=$withval/include
949                         IBASE_LIBDIR=$withval/lib
950                 else
951                         AC_MSG_RESULT(no)
952                         AC_MSG_ERROR(Invalid InterBase directory - unable to find ibase.h)
953                 fi
954                 IBASE_LFLAGS="-L$IBASE_LIBDIR -lgds"
955                 IBASE_INCLUDE=-I$IBASE_INCDIR
956                 AC_DEFINE(HAVE_IBASE)
957                 AC_MSG_RESULT(yes)
958                 have_db=yes
959         fi
960 ],[
961         AC_MSG_RESULT(no)
962 ])
963 AC_SUBST(IBASE_LFLAGS)
964 AC_SUBST(IBASE_INCLUDE)
965
966 AC_MSG_CHECKING(for Oracle8 support)
967 AC_ARG_WITH(oracle8,
968 [  --with-oracle8[=DIR]    Include Oracle8 support.  DIR is the Oracle
969                           home directory, defaults to $ORACLE_HOME or
970                           /oracle8/app/oracle/product/8.0.5.],
971 [
972         if test "$withval" != "no"; then
973             if test "$have_db" = "yes"; then
974                 AC_MSG_RESULT(error)
975                 AC_MSG_ERROR("You can configure for only one database.");
976             fi
977         fi
978
979         if test "$withval" = "yes"; then
980                 withval="$ORACLE_HOME"
981                 if test "$withval" = ""; then
982                         withval=/oracle8/app/oracle/product/8.0.5
983                 fi
984         fi
985
986         if test "$withval" != "no"; then
987                 if test -f $withval/rdbms/demo/oci.h; then
988                         ORACLE8_INCDIR1=$withval/rdbms/demo/
989                         ORACLE8_INCDIR2=$withval/rdbms/public/:
990                         ORACLE8_INCDIR3=$withval/network/public/
991                         ORACLE8_INCDIR4=$withval/plsql/public/
992                         ORACLE8_LIBDIR1=$withval/lib
993                         ORACLE8_LIBDIR2=$withval/rdbms/lib
994                 else
995                         AC_MSG_RESULT(no)
996                         AC_MSG_ERROR(Invalid ORACLE directory - unable to find oci.h)
997                 fi
998                 ORACLE8_LFLAGS="-L$ORACLE8_LIBDIR1 -L$ORACLE8_LIBDIR2 $withval/lib/libclntsh.so -lmm -lepc -lclient -lvsn -lcommon -lgeneric -lcore4 -lnlsrtl3 -lnsl -lm -ldl -lnetv2 -lnttcp -lnetwork -lncr -lsql"
999                 ORACLE8_INCLUDE="-I$ORACLE8_INCDIR1 -I$ORACLE8_INCDIR2 -I$ORACLE8_INCDIR3 -I$ORACLE8_INCDIR4"
1000                 AC_DEFINE(HAVE_ORACLE8)
1001                 AC_MSG_RESULT(yes)
1002                 have_db=yes
1003         fi
1004 ],[
1005         AC_MSG_RESULT(no)
1006 ])
1007 AC_SUBST(ORACLE8_LFLAGS)
1008 AC_SUBST(ORACLE8_INCLUDE)
1009
1010
1011 AC_MSG_CHECKING(for Oracle7 support)
1012 AC_ARG_WITH(oracle7,
1013 [  --with-oracle7[=DIR]    Include Oracle 7.3 support.  DIR is the Oracle
1014                           home directory, defaults to 
1015                           ORACLE_HOME [$ORACLE_HOME]],
1016 [
1017         if test "$withval" != "no"; then
1018             if test "$have_db" = "yes"; then
1019                 AC_MSG_RESULT(error)
1020                 AC_MSG_ERROR("You can configure for only one database.");
1021             fi
1022         fi
1023
1024         if test "$withval" = "yes"; then
1025                 withval="$ORACLE_HOME"
1026         fi
1027
1028         if test "$withval" != "no"; then
1029                 if test -f $withval/rdbms/demo/ocidfn.h; then
1030                         ORACLE7_INCDIR=$withval/rdbms/demo/
1031                         ORACLE7_LIBDIR1=$withval/lib
1032                         ORACLE7_LIBDIR2=$withval/rdbms/lib
1033                 else
1034                         AC_MSG_RESULT(no)
1035                         AC_MSG_ERROR(Invalid ORACLE directory - unable to find ocidfn.h)
1036                 fi
1037
1038         ORACLEINST_TOP=$withval
1039         if test -f "$ORACLEINST_TOP/rdbms/lib/sysliblist"
1040         then
1041           ORA_SYSLIB="`cat $ORACLEINST_TOP/rdbms/lib/sysliblist`"
1042         elif test -f "$ORACLEINST_TOP/lib/sysliblist"
1043             then
1044           ORA_SYSLIB="`cat $ORACLEINST_TOP/lib/sysliblist`"
1045         else
1046           ORA_SYSLIB="-lm"
1047         fi
1048           
1049                 ORACLE7_LFLAGS="-L$ORACLE7_LIBDIR1 -L$ORACLE7_LIBDIR2 \
1050             -lclient -lsqlnet -lncr -lsqlnet -lclient -lcommon \
1051             -lgeneric -lsqlnet -lncr -lsqlnet -lclient -lcommon -lgeneric \
1052             -lepc -lnlsrtl3 -lc3v6 -lcore3 -lnlsrtl3 -lcore3 -lnlsrtl3 \
1053             $ORA_SYSLIB -lcore3 $ORA_SYSLIB"
1054                 ORACLE7_INCLUDE="-I$ORACLE7_INCDIR "
1055                 AC_DEFINE(HAVE_ORACLE7)
1056                 AC_MSG_RESULT(yes)
1057                 have_db=yes
1058         fi
1059 ],[
1060         AC_MSG_RESULT(no)
1061 ])
1062 AC_SUBST(ORACLE7_LFLAGS)
1063 AC_SUBST(ORACLE7_INCLUDE)
1064 ])
1065   
1066
1067 AC_DEFUN(AM_CONDITIONAL,
1068 [AC_SUBST($1_TRUE)
1069 AC_SUBST($1_FALSE)
1070 if $2; then
1071   $1_TRUE=
1072   $1_FALSE='#'
1073 else
1074   $1_TRUE='#'
1075   $1_FALSE=
1076 fi])
1077
1078
1079
1080 dnl
1081 dnl ========================================================================
1082 dnl
1083 dnl      Old Gnome 1.4 detection code -- deprecated, but still used
1084 dnl
1085 dnl ========================================================================
1086
1087 dnl AM_ACLOCAL_INCLUDE(macrodir)
1088 AC_DEFUN([AM_ACLOCAL_INCLUDE],
1089 [
1090         AM_CONDITIONAL(INSIDE_GNOME_COMMON, false)
1091
1092         test -n "$ACLOCAL_FLAGS" && ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
1093
1094         for k in $1 ; do ACLOCAL="$ACLOCAL -I $k" ; done
1095 ])
1096
1097 dnl
1098 dnl GNOME_INIT_HOOK (script-if-gnome-enabled, [failflag], [additional-inits])
1099 dnl
1100 dnl if failflag is "fail" then GNOME_INIT_HOOK will abort if gnomeConf.sh
1101 dnl is not found. 
1102 dnl
1103
1104 AC_DEFUN([GNOME_INIT_HOOK],[
1105         AC_SUBST(GNOME_LIBS)
1106         AC_SUBST(GNOMEUI_LIBS)
1107         AC_SUBST(GNOMEGNORBA_LIBS)
1108         AC_SUBST(GTKXMHTML_LIBS)
1109         AC_SUBST(ZVT_LIBS)
1110         AC_SUBST(GNOME_LIBDIR)
1111         AC_SUBST(GNOME_INCLUDEDIR)
1112
1113         AC_ARG_WITH(gnome-includes,
1114         [  --with-gnome-includes   Specify location of GNOME headers],[
1115         CFLAGS="$CFLAGS -I$withval"
1116         ])
1117         
1118         AC_ARG_WITH(gnome-libs,
1119         [  --with-gnome-libs       Specify location of GNOME libs],[
1120         LDFLAGS="$LDFLAGS -L$withval"
1121         gnome_prefix=$withval
1122         ])
1123
1124         AC_ARG_WITH(gnome,
1125         [  --with-gnome            Specify prefix for GNOME files],
1126                 if test x$withval = xyes; then
1127                         want_gnome=yes
1128                         dnl Note that an empty true branch is not
1129                         dnl valid sh syntax.
1130                         ifelse([$1], [], :, [$1])
1131                 else
1132                         if test "x$withval" = xno; then
1133                                 want_gnome=no
1134                         else
1135                                 want_gnome=yes
1136                                 LDFLAGS="$LDFLAGS -L$withval/lib"
1137                                 CFLAGS="$CFLAGS -I$withval/include"
1138                                 gnome_prefix=$withval/lib
1139                         fi
1140                 fi,
1141                 want_gnome=yes)
1142
1143         if test "x$want_gnome" = xyes; then
1144
1145             AC_PATH_PROG(GNOME_CONFIG,gnome-config,no)
1146             if test "$GNOME_CONFIG" = "no"; then
1147               no_gnome_config="yes"
1148             else
1149               AC_MSG_CHECKING(if $GNOME_CONFIG works)
1150               if $GNOME_CONFIG --libs-only-l gnome >/dev/null 2>&1; then
1151                 AC_MSG_RESULT(yes)
1152                 GNOME_GNORBA_HOOK([],$2)
1153                 GNOME_LIBS="`$GNOME_CONFIG --libs-only-l gnome`"
1154                 GNOMEUI_LIBS="`$GNOME_CONFIG --libs-only-l gnomeui`"
1155                 GNOMEGNORBA_LIBS="`$GNOME_CONFIG --libs-only-l gnorba gnomeui`"
1156                 GTKXMHTML_LIBS="`$GNOME_CONFIG --libs-only-l gtkxmhtml`"
1157                 ZVT_LIBS="`$GNOME_CONFIG --libs-only-l zvt`"
1158                 GNOME_LIBDIR="`$GNOME_CONFIG --libs-only-L gnorba gnomeui`"
1159                 GNOME_INCLUDEDIR="`$GNOME_CONFIG --cflags gnorba gnomeui`"
1160                 $1
1161               else
1162                 AC_MSG_RESULT(no)
1163                 no_gnome_config="yes"
1164               fi
1165             fi
1166
1167             if test x$exec_prefix = xNONE; then
1168                 if test x$prefix = xNONE; then
1169                     gnome_prefix=$ac_default_prefix/lib
1170                 else
1171                     gnome_prefix=$prefix/lib
1172                 fi
1173             else
1174                 gnome_prefix=`eval echo \`echo $libdir\``
1175             fi
1176         
1177             if test "$no_gnome_config" = "yes"; then
1178               AC_MSG_CHECKING(for gnomeConf.sh file in $gnome_prefix)
1179               if test -f $gnome_prefix/gnomeConf.sh; then
1180                 AC_MSG_RESULT(found)
1181                 echo "loading gnome configuration from" \
1182                      "$gnome_prefix/gnomeConf.sh"
1183                 . $gnome_prefix/gnomeConf.sh
1184                 $1
1185               else
1186                 AC_MSG_RESULT(not found)
1187                 if test x$2 = xfail; then
1188                   AC_MSG_ERROR(Could not find the gnomeConf.sh file that is generated by gnome-libs install)
1189                 fi
1190               fi
1191             fi
1192         fi
1193
1194         if test -n "$3"; then
1195           n="$3"
1196           for i in $n; do
1197             AC_MSG_CHECKING(extra library \"$i\")
1198             case $i in 
1199               applets)
1200                 AC_SUBST(GNOME_APPLETS_LIBS)
1201                 GNOME_APPLETS_LIBS=`$GNOME_CONFIG --libs-only-l applets`
1202                 AC_MSG_RESULT($GNOME_APPLETS_LIBS);;
1203               docklets)
1204                 AC_SUBST(GNOME_DOCKLETS_LIBS)
1205                 GNOME_DOCKLETS_LIBS=`$GNOME_CONFIG --libs-only-l docklets`
1206                 AC_MSG_RESULT($GNOME_DOCKLETS_LIBS);;
1207               capplet)
1208                 AC_SUBST(GNOME_CAPPLET_LIBS)
1209                 GNOME_CAPPLET_LIBS=`$GNOME_CONFIG --libs-only-l capplet`
1210                 AC_MSG_RESULT($GNOME_CAPPLET_LIBS);;
1211               *)
1212                 AC_MSG_RESULT(unknown library)
1213             esac
1214             EXTRA_INCLUDEDIR=`$GNOME_CONFIG --cflags $i`
1215             GNOME_INCLUDEDIR="$GNOME_INCLUDEDIR $EXTRA_INCLUDEDIR"
1216           done
1217         fi
1218 ])
1219
1220 dnl
1221 dnl GNOME_INIT ([additional-inits])
1222 dnl
1223
1224 AC_DEFUN([GNOME_INIT],[
1225         GNOME_INIT_HOOK([],fail,$1)
1226 ])
1227
1228 dnl GNOME_X_CHECKS
1229 dnl
1230 dnl Basic X11 related checks for X11.  At the end, the following will be
1231 dnl defined/changed:
1232 dnl   GTK_{CFLAGS,LIBS}      From AM_PATH_GTK
1233 dnl   CPPFLAGS               Will include $X_CFLAGS
1234 dnl   GNOME_HAVE_SM          `true' or `false' depending on whether session
1235 dnl                          management is available.  It is available if
1236 dnl                          both -lSM and X11/SM/SMlib.h exist.  (Some
1237 dnl                          Solaris boxes have the library but not the header)
1238 dnl   XPM_LIBS               -lXpm if Xpm library is present, otherwise ""
1239 dnl
1240 dnl The following configure cache variables are defined (but not used):
1241 dnl   gnome_cv_passdown_{x_libs,X_LIBS,X_CFLAGS}
1242 dnl
1243 AC_DEFUN([GNOME_X_CHECKS],
1244 [
1245         AM_PATH_GTK(1.2.0,,AC_MSG_ERROR(GTK not installed, or gtk-config not in path))
1246         dnl Hope that GTK_CFLAGS have only -I and -D.  Otherwise, we could
1247         dnl   test -z "$x_includes" || CPPFLAGS="$CPPFLAGS -I$x_includes"
1248         dnl
1249         dnl Use CPPFLAGS instead of CFLAGS because AC_CHECK_HEADERS uses
1250         dnl CPPFLAGS, not CFLAGS
1251         CPPFLAGS="$CPPFLAGS $GTK_CFLAGS"
1252
1253         saved_ldflags="$LDFLAGS"
1254         LDFLAGS="$LDFLAGS $GTK_LIBS"
1255
1256         gnome_cv_passdown_x_libs="$GTK_LIBS"
1257         gnome_cv_passdown_X_LIBS="$GTK_LIBS"
1258         gnome_cv_passdown_X_CFLAGS="$GTK_CFLAGS"
1259         gnome_cv_passdown_GTK_LIBS="$GTK_LIBS"
1260
1261         LDFLAGS="$saved_ldflags $GTK_LIBS"
1262
1263 dnl We are requiring GTK >= 1.1.1, which means this will be fine anyhow.
1264         USE_DEVGTK=true
1265
1266 dnl     AC_MSG_CHECKING([whether to use features from (unstable) GTK+ 1.1.x])
1267 dnl     AC_EGREP_CPP(answer_affirmatively,
1268 dnl     [#include <gtk/gtkfeatures.h>
1269 dnl     #ifdef GTK_HAVE_FEATURES_1_1_0
1270 dnl        answer_affirmatively
1271 dnl     #endif
1272 dnl     ], dev_gtk=yes, dev_gtk=no)
1273 dnl     if test "$dev_gtk" = "yes"; then
1274 dnl        USE_DEVGTK=true
1275 dnl     fi
1276 dnl     AC_MSG_RESULT("$dev_gtk")
1277
1278         GNOME_HAVE_SM=true
1279         case "$GTK_LIBS" in
1280          *-lSM*)
1281             dnl Already found it.
1282             ;;
1283          *)
1284             dnl Assume that if we have -lSM then we also have -lICE.
1285             AC_CHECK_LIB(SM, SmcSaveYourselfDone,
1286                 [GTK_LIBS="-lSM -lICE $GTK_LIBS"],GNOME_HAVE_SM=false,
1287                 $x_libs -lICE)
1288             ;;
1289         esac
1290
1291         if test "$GNOME_HAVE_SM" = true; then
1292            AC_CHECK_HEADERS(X11/SM/SMlib.h,,GNOME_HAVE_SM=false)
1293         fi
1294
1295         if test "$GNOME_HAVE_SM" = true; then
1296            AC_DEFINE(HAVE_LIBSM)
1297         fi
1298
1299         XPM_LIBS=""
1300         AC_CHECK_LIB(Xpm, XpmFreeXpmImage, [XPM_LIBS="-lXpm"], , $x_libs)
1301         AC_SUBST(XPM_LIBS)
1302
1303         AC_REQUIRE([GNOME_PTHREAD_CHECK])
1304         LDFLAGS="$saved_ldflags"
1305
1306         AC_PROVIDE([GNOME_X_CHECKS])
1307 ])
1308
1309 AC_DEFUN([GNOME_PTHREAD_CHECK],[
1310         PTHREAD_LIB=""
1311         AC_CHECK_LIB(pthread, pthread_create, PTHREAD_LIB="-lpthread",
1312                 [AC_CHECK_LIB(pthreads, pthread_create, PTHREAD_LIB="-lpthreads",
1313                     [AC_CHECK_LIB(c_r, pthread_create, PTHREAD_LIB="-lc_r",
1314                         [AC_CHECK_LIB(pthread, __pthread_attr_init_system, PTHREAD_LIB="-lpthread",
1315                                 [AC_CHECK_FUNC(pthread_create)]
1316                         )]
1317                     )]
1318                 )]
1319         )
1320         AC_SUBST(PTHREAD_LIB)
1321         AC_PROVIDE([GNOME_PTHREAD_CHECK])
1322 ])
1323
1324 dnl
1325 dnl GNOME_GNORBA_HOOK (script-if-gnorba-found, failflag)
1326 dnl
1327 dnl if failflag is "failure" it aborts if gnorba is not found.
1328 dnl
1329
1330 AC_DEFUN([GNOME_GNORBA_HOOK],[
1331         GNOME_ORBIT_HOOK([],$2)
1332         AC_CACHE_CHECK([for gnorba libraries],gnome_cv_gnorba_found,[
1333                 gnome_cv_gnorba_found=no
1334                 if test x$gnome_cv_orbit_found = xyes; then
1335                         GNORBA_CFLAGS="`gnome-config --cflags gnorba gnomeui`"
1336                         GNORBA_LIBS="`gnome-config --libs gnorba gnomeui`"
1337                         if test -n "$GNORBA_LIBS"; then
1338                                 gnome_cv_gnorba_found=yes
1339                         fi
1340                 fi
1341         ])
1342         AM_CONDITIONAL(HAVE_GNORBA, test x$gnome_cv_gnorba_found = xyes)
1343         if test x$gnome_cv_orbit_found = xyes; then
1344                 $1
1345                 GNORBA_CFLAGS="`gnome-config --cflags gnorba gnomeui`"
1346                 GNORBA_LIBS="`gnome-config --libs gnorba gnomeui`"
1347                 AC_SUBST(GNORBA_CFLAGS)
1348                 AC_SUBST(GNORBA_LIBS)
1349         else
1350                 if test x$2 = xfailure; then
1351                         AC_MSG_ERROR(gnorba library not installed or installation problem)
1352                 fi
1353         fi
1354 ])
1355
1356 AC_DEFUN([GNOME_GNORBA_CHECK], [
1357         GNOME_GNORBA_HOOK([],failure)
1358 ])
1359
1360 dnl
1361 dnl GNOME_ORBIT_HOOK (script-if-orbit-found, failflag)
1362 dnl
1363 dnl if failflag is "failure" it aborts if orbit is not found.
1364 dnl
1365
1366 AC_DEFUN([GNOME_ORBIT_HOOK],[
1367         AC_PATH_PROG(ORBIT_CONFIG,orbit-config,no)
1368         AC_PATH_PROG(ORBIT_IDL,orbit-idl,no)
1369         AC_CACHE_CHECK([for working ORBit environment],gnome_cv_orbit_found,[
1370                 if test x$ORBIT_CONFIG = xno -o x$ORBIT_IDL = xno; then
1371                         gnome_cv_orbit_found=no
1372                 else
1373                         gnome_cv_orbit_found=yes
1374                 fi
1375         ])
1376         AM_CONDITIONAL(HAVE_ORBIT, test x$gnome_cv_orbit_found = xyes)
1377         if test x$gnome_cv_orbit_found = xyes; then
1378                 $1
1379                 ORBIT_CFLAGS=`orbit-config --cflags client server`
1380                 ORBIT_LIBS=`orbit-config --use-service=name --libs client server`
1381                 AC_SUBST(ORBIT_CFLAGS)
1382                 AC_SUBST(ORBIT_LIBS)
1383         else
1384                 if test x$2 = xfailure; then
1385                         AC_MSG_ERROR(ORBit not installed or installation problem)
1386                 fi
1387         fi
1388 ])
1389
1390 AC_DEFUN([GNOME_ORBIT_CHECK], [
1391         GNOME_ORBIT_HOOK([],failure)
1392 ])
1393 dnl
1394 dnl =========================================================================
1395 dnl
1396
1397
1398 dnl
1399 dnl =========================================================================
1400 dnl
1401 dnl   New package checking stuff
1402 dnl
1403 dnl =========================================================================  
1404 dnl
1405 dnl PKG_CHECK_MODULES(GSTUFF, gtk+-2.0 >= 1.3 glib = 1.3.4, action-if, action-not)
1406 dnl defines GSTUFF_LIBS, GSTUFF_CFLAGS, see pkg-config man page
1407 dnl also defines GSTUFF_PKG_ERRORS on error
1408 AC_DEFUN(PKG_CHECK_MODULES, [
1409   succeeded=no
1410
1411   if test -z "$PKG_CONFIG"; then
1412     AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
1413   fi
1414
1415   if test "$PKG_CONFIG" = "no" ; then
1416      echo "*** The pkg-config script could not be found. Make sure it is"
1417      echo "*** in your path, or set the PKG_CONFIG environment variable"
1418      echo "*** to the full path to pkg-config."
1419      echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config."
1420   else
1421      PKG_CONFIG_MIN_VERSION=0.9.0
1422      if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then
1423         AC_MSG_CHECKING(for $2)
1424
1425         if $PKG_CONFIG --exists "$2" ; then
1426             AC_MSG_RESULT(yes)
1427             succeeded=yes
1428
1429             AC_MSG_CHECKING($1_CFLAGS)
1430             $1_CFLAGS=`$PKG_CONFIG --cflags "$2"`
1431             AC_MSG_RESULT($$1_CFLAGS)
1432
1433             AC_MSG_CHECKING($1_LIBS)
1434             $1_LIBS=`$PKG_CONFIG --libs "$2"`
1435             AC_MSG_RESULT($$1_LIBS)
1436         else
1437             $1_CFLAGS=""
1438             $1_LIBS=""
1439             ## If we have a custom action on failure, don't print errors, but 
1440             ## do set a variable so people can do so.
1441             $1_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"`
1442             ifelse([$4], ,echo $$1_PKG_ERRORS,)
1443         fi
1444
1445         AC_SUBST($1_CFLAGS)
1446         AC_SUBST($1_LIBS)
1447      else
1448         echo "*** Your version of pkg-config is too old. You need version $PKG_CONFIG_MIN_VERSION or newer."
1449         echo "*** See http://www.freedesktop.org/software/pkgconfig"
1450      fi
1451   fi
1452
1453   if test $succeeded = yes; then
1454      ifelse([$3], , :, [$3])
1455   else
1456      ifelse([$4], , AC_MSG_ERROR([Library requirements ($2) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them.]), [$4])
1457   fi
1458 ])