dnl YAZ Toolkit
-dnl (c) Index Data 1994-1999
+dnl (c) Index Data 1994-2000
dnl See the file LICENSE for details.
-dnl $Id: configure.in,v 1.7 1999-04-16 14:45:55 adam Exp $
-AC_INIT(include/yaz-version.h)
+dnl $Id: configure.in,v 1.19 2000-03-01 11:06:09 adam Exp $
+AC_INIT(include/yaz/yaz-version.h)
+AM_INIT_AUTOMAKE(yaz, 1.6)
dnl
dnl ------ Checking programs
AC_PROG_CC
AC_PROG_CPP
AC_PROG_INSTALL
AC_PROG_RANLIB
-dnl
+AC_CHECK_PROGS(have_sgml2txt,sgml2txt)
+AC_CHECK_PROGS(have_sgml2latex,sgml2latex)
+AC_CHECK_PROGS(have_sgml2html,sgml2html)
+if test "$have_sgml2txt" = "no" -o "$have_sgml2latex" = "no" - "$have_sgml2html" = "no"; then
+ DOCMODULE=""
+else
+ DOCMODULE="doc"
+fi
+dnl
dnl ----- YC: The Yaz Compiler
AC_SUBST(ASNMODULE)
-AC_ARG_WITH(yc,[ --with-yc compile using YC: The Yaz Compiler], [YCDIR=$withval],[YCDIR=""])
-
-if test "$YCDIR" = "yes"; then
- YCDIR="../yc"
-fi
-if test -d z39.50; then
- rm z39.50
-fi
-if test "$YCDIR" = ""; then
- ASNMODULE=asn
+AC_SUBST(ILLMODULE)
+AC_SUBST(ILLLIB)
+AC_ARG_ENABLE(yc,[ --disable-yc use old encoders, i.e. disable YAZ ASN.1 Compiler], , enable_yc=yes)
+if test "$enable_yc" = "yes"; then
+ ASNMODULE="z39.50"
+ ILLMODULE="ill"
+ ILLLIB=../ill/libill.a
+ ASN_MAKEFILES="z39.50/Makefile ill/Makefile"
+ cp -f include/yaz/z-proto.h include/yaz/proto.h
else
- if test ! -d "$YCDIR"; then
- AC_MSG_WARN(YC directory ${YCDIR} doesn't exist)
- fi
- ln -s ${YCDIR}/z39.50 z39.50
- ASNMODULE=z39.50
+ ILLMODULE=""
+ ASNMODULE=asn
+ ILLLIB=""
+ ASN_MAKEFILES="asn/Makefile"
+ cp -f include/yaz/prt-proto.h include/yaz/proto.h
fi
dnl
dnl ----- Sockets
dnl
dnl ------ GNU Readline
AC_CHECK_LIB(readline, readline, [LIBS="$LIBS -lreadline"])
+if test "$ac_cv_lib_readline_readline" = "no"; then
+ AC_CHECK_LIB(readline, readline, [LIBS="$LIBS -lreadline -ltermcap"])
+fi
AC_CHECK_LIB(history, add_history, [LIBS="$LIBS -lhistory"])
if test "$ac_cv_lib_readline_readline" = "yes"; then
AC_CHECK_HEADERS(readline/readline.h readline/history.h)
fi
dnl
dnl ------ tcpd
-AC_CHECK_LIB(wrap, main, [LIBS="$LIBS -lwrap"])
-AC_CHECK_HEADERS(tcpd.h)
+AC_ARG_ENABLE(tcpd,[ --enable-tcpd enable TCP wrapper for server if available])
+if test "$enable_tcpd" = "yes"; then
+ AC_MSG_CHECKING(for working tcpd.h)
+ oldLibs=$LIBS
+ LIBS="$LIBS -lwrap -lnsl"
+ AC_TRY_LINK([#include <syslog.h>
+ #include <tcpd.h>
+ int allow_severity = LOG_INFO;
+ int deny_severity = LOG_WARNING;],
+ [struct request_info request_info; int i;
+ i = hosts_access(&request_info);],tcpd_ok=1, tcpd_ok=0)
+ if test "$tcpd_ok" = "0"; then
+ AC_MSG_RESULT(no)
+ LIBS=$oldLibs
+ else
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(HAVE_TCPD_H)
+ fi
+fi
dnl
dnl ------ Headers
AC_STDC_HEADERS
fi
dnl
dnl ------ Threads
-AC_ARG_ENABLE(threads, [ --enable-threads enable threads if available],
- [threads_ok=$enableval], [threads_ok=no])
-if test "$threads_ok" = "yes"; then
+AC_ARG_ENABLE(threads, [ --enable-threads enable threads if available])
+if test "$enable_threads" = "yes"; then
AC_CHECK_HEADERS(pthread.h threads.h)
AC_CHECK_FUNC(pthread_mutex_lock)
if test "$ac_cv_func_pthread_mutex_lock" = "no"; then
AC_DEFINE(_REENTRANT)
fi
dnl
+SUBDIRS_VAR="util odr $ASNMODULE $ILLMODULE zutil comstack ccl tab retrieval server include lib client ztest $DOCMODULE"
+AC_SUBST(SUBDIRS_VAR)
+dnl
dnl ------ Makefiles
-AC_OUTPUT(Makefile util/Makefile asn/Makefile odr/Makefile comstack/Makefile client/Makefile server/Makefile ztest/Makefile retrieval/Makefile ccl/Makefile lib/Makefile rfc1006/Makefile)
+dnl
+AC_OUTPUT(Makefile util/Makefile odr/Makefile z39.50/Makefile asn/Makefile ill/Makefile zutil/Makefile comstack/Makefile ccl/Makefile tab/Makefile retrieval/Makefile server/Makefile include/Makefile include/yaz/Makefile lib/Makefile client/Makefile ztest/Makefile doc/Makefile)