dnl Process this file with autoconf to produce a configure script. AC_REVISION($Revision: 1.45 $)dnl AC_PREREQ(2.50) AC_INIT(include/eXosip2/eXosip.h) dnl require at least autoconf v 2.00 dnl AC_COPYRIGHT (COPYRIGHT-NOTICE) AC_MSG_NOTICE([eXosip2 The Extended Open SIP library.]) AC_MSG_NOTICE([Copyright (C) 2002,2003,2004,2005,2006 Aymeric MOIZARD - ]) dnl ********************************************************************* dnl Source packaging numbers EXOSIP_MAJOR_VERSION=3 EXOSIP_MINOR_VERSION=0 EXOSIP_MICRO_VERSION=1 SONAME_MAJOR_VERSION=6 SONAME_MINOR_VERSION=0 SONAME_MICRO_VERSION=0 dnl program extension EXOSIP_VERSION=$EXOSIP_MAJOR_VERSION.$EXOSIP_MINOR_VERSION.$EXOSIP_MICRO_VERSION LIBEXOSIP_SO_VERSION=$SONAME_MAJOR_VERSION:$SONAME_MINOR_VERSION:$SONAME_MICRO_VERSION AC_SUBST(LIBEXOSIP_SO_VERSION, $LIBEXOSIP_SO_VERSION) AC_SUBST(EXOSIP_VERSION) if test "x$PRERELEASE" = "x"; then VERSION=$EXOSIP_VERSION else VERSION="$EXOSIP_VERSION-$PRERELEASE" fi PACKAGE=libeXosip2 AC_MSG_RESULT([Configuring ${PACKAGE} ${VERSION}]) OS=`uname|sed -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'` AC_MSG_RESULT([Building Package on ${OS}]) dnl ********************************************************************* dnl Initialize automake stuff AC_CONFIG_AUX_DIR(scripts) AM_CONFIG_HEADER(config.h) AM_INIT_AUTOMAKE($PACKAGE, $VERSION) AM_ACLOCAL_INCLUDE(scripts) AC_CANONICAL_HOST AC_SUBST(ac_aux_dir) dnl Checks for programs. AC_PROG_CC AC_PROG_CPP AC_PROG_CXX AC_PROG_INSTALL dnl enable --enable-shared and --disable-shared options LT_AC_PROG_SED AC_PROG_LIBTOOL #AC_ENABLE_SHARED(yes) dnl declare --enable-* args and collect ac_help strings AC_ARG_ENABLE(josua, [ --enable-josua DEPRECATED TEST APPLICATION (no).], enable_josua=$enableval,enable_josua="no") AC_ARG_ENABLE(tools, [ --disable-tools compile tools programs (yes).], enable_tools=$enableval,enable_tools="yes") AC_ARG_ENABLE(debug, [ --disable-debug turn on debugging (yes).], enable_debug=$enableval,enable_debug="yes") AC_ARG_ENABLE(trace, [ --disable-trace turn on trace (yes).], enable_trace=$enableval,enable_trace="yes") AC_ARG_ENABLE(mpatrol, [ --enable-mpatrol turn on memory leak detection with patrol (no).], enable_mpatrol=$enableval,enable_mpatrol="no") AC_ARG_ENABLE(gprof, [ --enable-gprof turn on profiling support.], enable_gprof=$enableval,enable_gprof="no") dnl support for linux-thread or posix thread (pthread.h) AC_ARG_ENABLE(pthread, [ --enable-pthread enable support for POSIX threads. (autodetect)], enable_pthread=$enableval,enable_pthread="no") dnl support for semaphore.h (linux/sun...) AC_ARG_ENABLE(semaphore, [ --enable-semaphore enable support for semaphore (semaphore.h)], enable_semaphore=$enableval,enable_semaphore="no") dnl support for sysV semaphore in sys/sem.h (BSD/linux...) AC_ARG_ENABLE(sysv, [ --enable-sysv enable support for sysV semaphore (sys/sem.h).], enable_sysv=$enableval,enable_sysv="no") dnl compile with mt support if test "x$enable_pthread" = "xyes"; then EXOSIP_FLAGS="-DHAVE_PTHREAD" EXOSIP_LIB="-lpthread" else ACX_PTHREAD() fi EXOSIP_FLAGS="$EXOSIP_FLAGS -DOSIP_MT" AM_CONDITIONAL(COMPILE_TOOLS, test "x$enable_tools" = "xyes") if test "x$enable_semaphore" = "xyes"; then EXOSIP_FLAGS="$EXOSIP_FLAGS -DHAVE_SEMAPHORE_H" AC_CHECK_HEADERS(semaphore.h) elif test "x$enable_sysv" = "xyes"; then EXOSIP_FLAGS="$EXOSIP_FLAGS -UHAVE_SEMAPHORE_H -DHAVE_SYS_SEM_H" AC_CHECK_HEADERS(sys/sem.h) else AC_CHECK_HEADERS(semaphore.h) AC_CHECK_HEADERS(sys/sem.h) fi case $OS in linux*) EXOSIP_FLAGS="$EXOSIP_FLAGS -pedantic" ;; irix*) ;; hpux* | hp-ux*) ;; aix*) ;; osf*) AC_CHECK_LIB(rt,sem_open,[EXOSIP_LIB="$EXOSIP_LIB -lrt"]) ;; sunos*) ;; darwin*) EXOSIP_FLAGS="$EXOSIP_FLAGS -pedantic" ;; *) ;; esac if test "x$enable_debug" = "xyes"; then EXOSIP_FLAGS="$EXOSIP_FLAGS -DENABLE_DEBUG -g" CFLAGS=`echo $CFLAGS | sed 's/-O.//'` fi if test "x$enable_trace" = "xyes"; then EXOSIP_FLAGS="$EXOSIP_FLAGS -DENABLE_TRACE" fi if test "x$enable_mpatrol" = "xyes"; then EXOSIP_FLAGS="$EXOSIP_FLAGS -DENABLE_MPATROL" EXOSIP_LIB="$EXOSIP_LIB -lmpatrolmt -lelf" fi if test "x$enable_gprof" = "xyes"; then EXOSIP_FLAGS="$EXOSIP_FLAGS -pg" fi dnl Checks for libraries. AC_CHECK_LIB(posix4,sem_open,[EXOSIP_LIB="$EXOSIP_LIB -lposix4 -mt"]) AC_CHECK_LIB(nsl,nis_add,[EXOSIP_LIB="$EXOSIP_LIB -lnsl"]) AC_CHECK_LIB(socket,sendto,[EXOSIP_LIB="$EXOSIP_LIB -lsocket"]) AC_CHECK_LIB(rt,clock_gettime,[EXOSIP_LIB="$EXOSIP_LIB -lrt"]) case $OS in openbsd*) ;; *) AC_CHECK_LIB(resolv,res_query,[EXOSIP_LIB="$EXOSIP_LIB -lresolv"]) AC_CHECK_LIB(resolv,__res_query,[EXOSIP_LIB="$EXOSIP_LIB -lresolv"]) ;; esac EXOSIP_FLAGS="$EXOSIP_FLAGS" AC_CACHE_CHECK([whether -Wall works], Wall_flag, [ saved_CPPFLAGS=$CPPFLAGS CPPFLAGS="-Wall" AC_TRY_COMPILE(, , Wall_flag=yes, Wall_flag=no) CPPFLAGS=$saved_CPPFLAGS ]) if test "x$Wall_flag" = xyes; then CPPFLAGS="$CPPFLAGS -Wall" fi AC_CACHE_CHECK([whether -Wcast-align works], Wcast_align_flag, [ saved_CPPFLAGS=$CPPFLAGS CPPFLAGS="-Wcast-align" AC_TRY_COMPILE(, , Wcast_align_flag=yes, Wcast_align_flag=no) CPPFLAGS=$saved_CPPFLAGS ]) if test "x$Wcast_align_flag" = xyes; then CPPFLAGS="$CPPFLAGS -Wcast-align" fi AC_CACHE_CHECK([whether -Wchar-subscripts works], Wchar_subscripts_flag, [ saved_CPPFLAGS=$CPPFLAGS CPPFLAGS="-Wchar-subscripts" AC_TRY_COMPILE(, , Wchar_subscripts_flag=yes, Wchar_subscripts_flag=no) CPPFLAGS=$saved_CPPFLAGS ]) if test "x$Wchar_subscripts_flag" = xyes; then CPPFLAGS="$CPPFLAGS -Wchar-subscripts" fi AC_CACHE_CHECK([whether -Wformat works], Wformat_flag, [ saved_CPPFLAGS=$CPPFLAGS CPPFLAGS="-Wformat" AC_TRY_COMPILE(, , Wformat_flag=yes, Wformat_flag=no) CPPFLAGS=$saved_CPPFLAGS ]) if test "x$Wformat_flag" = xyes; then CPPFLAGS="$CPPFLAGS -Wformat" fi AC_CACHE_CHECK([whether -Winline works], Winline_flag, [ saved_CPPFLAGS=$CPPFLAGS CPPFLAGS="-Winline" AC_TRY_COMPILE(, , Winline_flag=yes, Winline_flag=no) CPPFLAGS=$saved_CPPFLAGS ]) if test "x$Winline_flag" = xyes; then CPPFLAGS="$CPPFLAGS -Winline" fi AC_CACHE_CHECK([whether -Wmissing-declarations works], Wmissing_declarations_flag, [ saved_CPPFLAGS=$CPPFLAGS CPPFLAGS="-Wmissing-declarations" AC_TRY_COMPILE(, , Wmissing_declarations_flag=yes, Wmissing_declarations_flag=no) CPPFLAGS=$saved_CPPFLAGS ]) if test "x$Wmissing_declarations_flag" = xyes; then CPPFLAGS="$CPPFLAGS -Wmissing-declarations" fi AC_CACHE_CHECK([whether -Wmissing-prototypes works], Wmissing_prototypes_flag, [ saved_CPPFLAGS=$CPPFLAGS CPPFLAGS="-Wmissing-prototypes" AC_TRY_COMPILE(, , Wmissing_prototypes_flag=yes, Wmissing_prototypes_flag=no) CPPFLAGS=$saved_CPPFLAGS ]) if test "x$Wmissing_prototypes_flag" = xyes; then CPPFLAGS="$CPPFLAGS -Wmissing-prototypes" fi AC_CACHE_CHECK([whether -Wnested-externs works], Wnested_externs_flag, [ saved_CPPFLAGS=$CPPFLAGS CPPFLAGS="-Wnested-externs" AC_TRY_COMPILE(, , Wnested_externs_flag=yes, Wnested_externs_flag=no) CPPFLAGS=$saved_CPPFLAGS ]) if test "x$Wnested_externs_flag" = xyes; then CPPFLAGS="$CPPFLAGS -Wnested-externs" fi AC_CACHE_CHECK([whether -Wpointer-arith works], Wpointer_arith_flag, [ saved_CPPFLAGS=$CPPFLAGS CPPFLAGS="-Wpointer-arith" AC_TRY_COMPILE(, , Wpointer_arith_flag=yes, Wpointer_arith_flag=no) CPPFLAGS=$saved_CPPFLAGS ]) if test "x$Wpointer_arith_flag" = xyes; then CPPFLAGS="$CPPFLAGS -Wpointer-arith" fi AC_SUBST(EXOSIP_FLAGS) AC_SUBST(EXOSIP_LIB) AC_SUBST(CFLAGS) dnl Checks for header files. AC_HEADER_STDC AC_CHECK_HEADERS(ctype.h) AC_CHECK_HEADERS(string.h) AC_CHECK_HEADERS(strings.h) AC_CHECK_HEADERS(stdio.h) AC_CHECK_HEADERS(stdlib.h) AC_CHECK_HEADERS(unistd.h) AC_CHECK_HEADERS(stdarg.h) AC_CHECK_HEADERS(varargs.h) AC_CHECK_HEADERS(sys/time.h) AC_CHECK_HEADERS(assert.h) AC_CHECK_HEADERS(signal.h) AC_CHECK_HEADERS(sys/signal.h) AC_CHECK_HEADERS(malloc.h) AC_CHECK_HEADERS(sys/select.h) AC_CHECK_HEADERS(sys/types.h) AC_CHECK_HEADERS(fcntl.h) AC_CHECK_HEADERS(sys/soundcard.h) AC_CHECK_HEADERS(arpa/inet.h) AC_CHECK_HEADERS(arpa/nameser.h) AC_CHECK_HEADERS(netdb.h) AC_CHECK_HEADERS(resolv8_compat.h) AC_CHECK_HEADERS([resolv.h], [], [], [#if HAVE_SYS_TYPES_H #include #endif #if HAVE_NETINET_IN_H #include #endif #if HAVE_ARPA_NAMESER_H #include #endif ]) AC_OUTPUT( Makefile scripts/Makefile platform/Makefile platform/vsnet/Makefile platform/wince/Makefile include/Makefile include/eXosip2/Makefile src/Makefile tools/Makefile help/Makefile help/doxygen/Makefile help/doxygen/doxygen.dox )