dnl Process this file with autoconf to produce a configure script. AC_INIT(src) AC_CANONICAL_SYSTEM AM_INIT_AUTOMAKE(libical,0.24) AM_CONFIG_HEADER(config.h) dnl Set the aux dir to .. (the toplevel evolution directory) so ylwrap dnl is found in the correct directory for automake >= 1.5 AC_CONFIG_AUX_DIR(..) dnl Subst in evolution's private directories AC_SUBST(privlibdir) AC_SUBST(privincludedir) AC_SUBST(privdatadir) dnl Initialize maintainer mode AM_MAINTAINER_MODE dnl Checks for programs. AC_PROG_YACC AC_PROG_CC AC_PROG_CXX AM_PROG_LEX AC_PROG_LN_S AC_PROG_INSTALL dnl Initialize libtool AM_DISABLE_STATIC AM_PROG_LIBTOOL AC_SUBST(AR) dnl *** bdb4 support AC_MSG_CHECKING(for Berkeley DB4 support) AC_ARG_WITH(bdb4, [ --with-bdb4 Add support for Berkeley DB 4.0], [case $with_bdb4 in yes) AC_MSG_RESULT(yes) AC_MSG_RESULT( Adding Berkeley DB support) WITH_BDB4="yes" ;; no) AC_MSG_RESULT(no) ;; *) AC_MSG_RESULT(no) AC_MSG_RESULT(Ignoring unknown argument to --with-bdb4: $with_bdb4) ;; esac], AC_MSG_RESULT(no)) if test x$WITH_BDB4 = xyes; then AC_ARG_WITH(bdb4_dir, [ --with-bdb4-dir=PATH Use PATH as location of BerkeleyDB 4.0], BDB_DIR=$withval, BDB_DIR=/usr/local/BerkeleyDB.4.0 ) AC_MSG_CHECKING(for Berkeley DB include files) if test -f $BDB_DIR/include/db.h; then BDB_DIR_INCLUDE=$BDB_DIR/include AC_MSG_RESULT($BDB_DIR_INCLUDE) else if test -f $BDB_DIR/include/db4/db.h; then BDB_DIR_INCLUDE=$BDB_DIR/include/db4 AC_MSG_RESULT($BDB_DIR_INCLUDE) else WITH_BDB4="no" AC_MSG_RESULT(not found!) fi fi AC_MSG_CHECKING(for Berkeley DB libraries) if test -f $BDB_DIR/lib/libdb-4.0.la; then BDB_DIR_LIB=$BDB_DIR/lib BDB_LIB=libdb-4.0.la AC_MSG_RESULT($BDB_DIR_LIB $BDB_LIB) else if test -f $BDB_DIR/lib/libdb4.la; then BDB_DIR_LIB=$BDB_DIR/lib BDB_LIB=libdb4.la AC_MSG_RESULT($BDB_DIR_LIB $BDB_LIB) else WITH_BDB4="no" AC_MSG_RESULT(not found!) fi fi AC_SUBST(BDB_DIR) AC_SUBST(BDB_DIR_INCLUDE) AC_SUBST(BDB_DIR_LIB) AC_SUBST(BDB_LIB) dnl 4.0 is required... BDB_VERSION="4.0" AC_SUBST(BDB_VERSION) fi AM_CONDITIONAL(WITH_BDB4, test x$WITH_BDB4 = xyes) dnl *** Yacc/Bison support if test "x$USE_MAINTAINER_MODE" == xyes; then DEV="yes" AC_MSG_RESULT([Setting up for development: -Wall, flex, bison]) fi AM_CONDITIONAL(DEV, test x$DEV = xyes) AC_CHECK_PROGS(AR, ar aal, ar) AC_CHECK_PROGS(PERL, perl5 perl) AC_MSG_CHECKING(whether to define _REENTRANT) AC_ARG_ENABLE(reentrant, [ --enable-reentrant define _REENTRANT to enable reentrant system calls], [ case "${enableval}" in no) AC_MSG_RESULT(no) ac_cv_reentrant=no ;; *) AC_MSG_RESULT(yes) AC_DEFINE(ICAL_REENTRANT, ,[Define if we want _REENTRANT]) [CFLAGS="$CFLAGS -D_REENTRANT"] ac_cv_reentrant=yes ;; esac ], AC_MSG_RESULT(no) ) dnl *** libicalcap support (experimental) AC_MSG_CHECKING(for CAP/BEEP support) AC_ARG_WITH(libicalcap, [ --with-libicalcap Add support for CAP/BEEP support], [case $with_libicalcap in yes) AC_MSG_RESULT(yes) AC_MSG_RESULT( Adding CAP/BEEP support) WITH_CAP="yes" ;; no) AC_MSG_RESULT(no) ;; *) AC_MSG_RESULT(no) AC_MSG_RESULT(Ignoring unknown argument to --with-libicalcap: $with_libicalcap) ;; esac], AC_MSG_RESULT(no)) if test x$WITH_CAP = xyes; then AC_MSG_CHECKING(for CAP/BEEP files) PKG_CHECK_MODULES(RRCAP, roadrunner >= 0.9 \ rrtls >= 0.9 \ rrsasl >= 0.9 \ rrcap >= 0.9) AC_SUBST(RRCAP_CFLAGS) AC_SUBST(RRCAP_LIBS) fi AM_CONDITIONAL(WITH_CAP, test x$WITH_CAP = xyes) dnl ************************************************** dnl test/regression.c (and maybe others) needs this defined dnl ************************************************** AC_DEFINE(ICAL_ERRORS_ARE_FATAL,0,[Define to make icalerror_* calls abort instead of internally signalling an error]) AC_DEFINE(NO_WARN_DEPRECATED,1,[Define to 1 if you DO NOT WANT to see deprecated messages]) AC_DEFINE(NO_WARN_ICAL_MALFORMEDDATA_ERROR_HACK,1,[Define to 1 if you DO NO WANT to see the warning messages related to ICAL_MALFORMEDDATA_ERROR and parsing .ics zoneinfo files]) AC_DEFINE(ICAL_UNIX_NEWLINE,1,[Define to terminate lines with "\n" instead of "\r\n"]) dnl AC_DEFINE(ICAL_NO_EMPTY_ARRAY_DECL,1,[Define to 1 if your compile does not like lines like: struct something foo[]]) dnl Checks for libraries. dnl Replace `main' with a function in -lical: dnl AC_CHECK_LIB(ical, main) dnl Check if this system can use pthreads dnl HACK to support FreeBSD 4.x pthread case "${host}" in *-*-freebsdelf4* ) AC_MSG_RESULT(checking for pthread_create in -lpthread... -pthread (FreeBSD 4.x style)) AC_DEFINE(HAVE_PTHREAD, ,[Define if we have pthread.]) PTHREAD_LIBS=-pthread;; *) AC_CHECK_LIB(pthread,pthread_create,have_pthread=yes) if test "x$have_pthread" = xyes; then AC_DEFINE(HAVE_PTHREAD, ,[Define if we have pthread.]) PTHREAD_LIBS=-lpthread fi;; esac AM_CONDITIONAL(HAVE_PTHREAD, test "$have_pthread" = "yes") AC_SUBST(PTHREAD_LIBS) dnl Checks for header files. AC_HEADER_STDC AC_CHECK_HEADERS(assert.h ctype.h pthread.h stdint.h time.h sys/types.h unistd.h wctype.h) dnl Checks for typedefs, structures, and compiler characteristics. AC_C_CONST AC_TYPE_SIZE_T AC_TYPE_MODE_T AC_CHECK_TYPE(intptr_t) AC_STRUCT_TM dnl Checks for library functions. AC_CHECK_FUNCS(gmtime_r isspace iswspace strdup snprintf) dnl ************************************************** dnl * Check for C++ dnl ************************************************** AC_ARG_ENABLE(cxx, [ --enable-cxx Enable C++ bindings],,enable_cxx="no") AM_CONDITIONAL(WITH_CXX_BINDINGS, test x$enable_cxx = "xyes") dnl ************************************************** dnl * Check for Java dnl ************************************************** AC_ARG_ENABLE(java, [ --enable-java Enable Java bindings],,enable_java="no") if test "x$enable_java" = "xyes"; then AC_PATH_PROG(JAR, jar, /usr/local/bin/jar, /usr/local/bin:$PATH) AC_PATH_PROG(JAVA, java, /usr/local/bin/java, /usr/local/bin:$PATH) AC_PATH_PROG(JAVAC, javac, /usr/local/bin/javac, /usr/local/bin:$PATH) AC_PATH_PROG(JAVAH, javah, /usr/local/bin/javah, /usr/local/bin:$PATH) AC_SUBST(JAR) AC_SUBST(JAVA) AC_SUBST(JAVAC) AC_SUBST(JAVAH) dnl truly gross case "${host}" in *-*-solaris*) JAVA_PLATFORM="solaris" ;; *-*-linux*) JAVA_PLATFORM="linux" ;; *-*-freebsd*) JAVA_PLATFORM="bsd" ;; *-*-aix*) JAVA_PLATFORM="aix" ;; *-sequent-*) JAVA_PLATFORM="ptx" ;; *-*-hpux*) JAVA_PLATFORM="hpux" ;; *-*-irix*) JAVA_PLATFORM="irix" ;; *-*-os390*) JAVA_PLATFORM="os390" ;; *-*-os400*) JAVA_PLATFORM="os400" ;; *-apple-darwin*|*-apple-rhapsody*) JAVA_PLATFORM="darwin" ;; *) JAVA_PLATFORM="unknown" ;; esac AC_SUBST(JAVA_PLATFORM) fi AM_CONDITIONAL(WITH_JAVA, test x$enable_java = "xyes") dnl ************************************************** dnl * Check for Python dnl ************************************************** python_val=false AC_ARG_ENABLE(python, [ --enable-python Enable python bindings],,enable_python="no") if test "x$enable_python" = "xyes"; then python_val=true else python_val=false fi if test $python_val = true; then AC_CHECK_PROG(python_val, python, true, false) AC_CHECK_PROG(python_val, swig, true, false) PY_PREFIX=`python -c 'import sys ; print sys.prefix'` PY_EXEC_PREFIX=`python -c 'import sys ; print sys.exec_prefix'` changequote(<<, >>)dnl PY_VERSION=`python -c 'import sys ; print sys.version[0:3]'` changequote([, ])dnl if test -f $PY_PREFIX/include/python$PY_VERSION/Python.h; then PY_LIBS="python$PY_VERSION" PY_LIB_LOC="-L$PY_EXEC_PREFIX/lib/python$PY_VERSION/config" PY_CFLAGS="-I$PY_PREFIX/include/python$PY_VERSION" PY_MAKEFILE="$PY_EXEC_PREFIX/lib/python$PY_VERSION/config/Makefile" PY_LOCALMODLIBS=`sed -n -e 's/^LOCALMODLIBS=\(.*\)/\1/p' $PY_MAKEFILE` PY_BASEMODLIBS=`sed -n -e 's/^BASEMODLIBS=\(.*\)/\1/p' $PY_MAKEFILE` PY_OTHER_LIBS=`sed -n -e 's/^LIBS=\(.*\)/\1/p' $PY_MAKEFILE` PY_EXTRA_LIBS="$PY_LOCALMODLIBS $PY_BASEMODLIBS $PY_OTHER_LIBS" AC_SUBST(PY_LIBS) AC_SUBST(PY_LIB_LOC) AC_SUBST(PY_CFLAGS) AC_SUBST(PY_EXTRA_LIBS) else python_val=false fi fi AM_CONDITIONAL(WITH_PYTHON, test $python_val = true) AC_OUTPUT([ Makefile design-data/Makefile doc/Makefile examples/Makefile scripts/Makefile src/Makefile src/libical/Makefile src/libical/icalversion.h src/libicalcap/Makefile src/libicalss/Makefile src/libicalvcal/Makefile src/python/Makefile src/java/Makefile src/test/Makefile test-data/Makefile zoneinfo/Makefile ])