Skip to content
Snippets Groups Projects
Select Git revision
  • dc300e1c9c1f3a6fecd4b4dc56db98cb39b61d55
  • master default protected
  • release/202005
  • release/202001
  • release/201912
  • release/201911
  • release/releaseWindowsTestOne
  • release/windowsReleaseTest
  • release/releaseTest
  • release/releaseWindowsTest
  • release/201910
  • release/qt/201910
  • release/windows-test/201910
  • release/201908
  • release/201906
  • release/201905
  • release/201904
  • release/201903
  • release/201902
  • release/201901
  • release/201812
  • 4.0.0
  • 2.2.0
  • 2.1.0
  • 2.0.1
  • 2.0.0
  • 1.4.1
  • 1.4.0
  • 1.3.0
  • 1.2.0
  • 1.1.0
31 results

test_media_player.cpp

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    configure.ac 13.14 KiB
    dnl SFLPhone - configure.ac for automake 1.9 and autoconf 2.59
    dnl
    
    	dnl Process this file with autoconf to produce a configure script.
    	AC_PREREQ(2.59)
    	AC_INIT([sflphone],[0.9.8~rc1],[sflphoneteam@savoirfairelinux.com],[sflphone])
    	AC_COPYRIGHT([[Copyright (c) Savoir-Faire Linux 2004-2009]])
    AC_REVISION([$Revision$])
    
    	AC_CANONICAL_SYSTEM
    
    	PACKAGE=SFLphone
    	VERSION=`cat VERSION`
    
    	AM_INIT_AUTOMAKE($NAME, $VERSION)
    AM_CONFIG_HEADER([config.h])
    
    # Silent build by default. Use make V=1 to increase verbosity
    m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
    
    	dnl Use this variable in the program
    AC_SUBST(PACKAGE_VERSION)
    
    	AM_PROG_LIBTOOL
    
    
    	dnl Rewrite name of programs to be installed
    	dnl AC_ARG_PROGRAM
    
    	dnl Compute canonical system name
    	dnl AC_CANONICAL_TARGET
    
    	dnl Improve make variable MAKE
    	AC_PROG_MAKE_SET
    
    	dnl Where to find configure files
    	dnl AC_CONFIG_SRCDIR([config.h.in])
    AC_CONFIG_MACRO_DIR([m4])
    
    	dnl What to generate
    	dnl AC_CONFIG_FILES([stamp-h], [echo timestamp > stamp-h])
    AC_CONFIG_FILES([Makefile])
    	AC_CONFIG_FILES([libs/Makefile \
    			libs/utilspp/Makefile \
    			libs/utilspp/functor/Makefile \
    			libs/utilspp/singleton/Makefile \
    			libs/dbus-c++/Makefile \
    			libs/dbus-c++/src/Makefile \
    			libs/dbus-c++/tools/Makefile \
    			libs/dbus-c++/data/Makefile \
    			libs/iax2/Makefile])
    
    	AC_CONFIG_FILES([src/Makefile \
    			src/sip/Makefile \
    			src/iax/Makefile \
    			src/audio/Makefile \
    			src/audio/audiortp/Makefile \
    			src/audio/pulseaudio/Makefile \
    			src/audio/alsa/Makefile \
    			src/audio/sound/Makefile \
    			src/audio/codecs/Makefile \
    			src/config/Makefile \
    			src/dbus/Makefile \
    			src/plug-in/audiorecorder/Makefile \
    			src/plug-in/Makefile \
    			src/plug-in/test/Makefile \
    			src/hooks/Makefile \
    			src/history/Makefile]) 
    
    	dnl Unitary test section
    AC_CONFIG_FILES([test/Makefile])
    
    AC_CONFIG_FILES([ringtones/Makefile])
    
    AC_CONFIG_FILES([man/Makefile])
    
    	AC_CONFIG_FILES([doc/Makefile \
    					doc/dbus-api/Makefile \
    			doc/doxygen/Makefile])
    
    	dnl the file stamp-h.in should be there before (instead of AC_CONFIG_HEADERS(config.h))
    dnl AM_CONFIG_HEADER(config.h)
    
    	dnl Settings need Standard C++ Library
    	LIBS="$LIBS -lstdc++"
    
    	dnl Solaris pkgadd support definitions
    	PKGADD_PKG="SFLphone"
    	PKGADD_NAME="SFLphone - a SIP client and daemon"
    	PKGADD_VENDOR="http://www.sflphone.org/"
    	AC_SUBST(PKGADD_PKG)
    	AC_SUBST(PKGADD_NAME)
    AC_SUBST(PKGADD_VENDOR)
    
    	dnl Check for programs
    	AC_PROG_CC
    	AC_PROG_CXX
    	AC_PROG_CPP
    	AC_PROG_INSTALL
    	AC_PROG_LN_S
    	AC_PROG_MAKE_SET
    	dnl will have to remove this
    	AC_PROG_LIBTOOL
    
    	dnl Define C++ as default language
    AC_LANG(C++)
    
    	dnl Setup C++ compiler flags
    	CXXFLAGS="$CXXFLAGS $USE_EXCEPTIONS $USER_INCLUDES -g -Wno-return-type"
    	dnl CXXFLAGS="$USE_EXCEPTIONS $USER_INCLUDES -O0 -g -Wno-return-type"
    
    	dnl Check for header files
    	AC_FUNC_ALLOCA
    	AC_HEADER_STDC
    	AC_CHECK_HEADERS([arpa/inet.h fcntl.h libintl.h limits.h malloc.h \
    			memory.h netdb.h netinet/in.h stdlib.h string.h strings.h \
    			sys/ioctl.h sys/socket.h sys/time.h unistd.h utime.h ostream])
    
    	dnl Check for typedefs, structures, and compiler characteristics
    	AC_HEADER_STAT
    	AC_HEADER_STDBOOL
    	AC_C_CONST
    	AC_C_INLINE
    	AC_TYPE_PID_T
    	AC_TYPE_SIZE_T
    	AC_HEADER_TIME
    	AC_C_VOLATILE
    AC_CHECK_TYPES([ptrdiff_t])
    
    	dnl ********************************
    	dnl Check for needed functions
    	dnl ********************************
    	AC_FUNC_CHOWN
    	AC_FUNC_ERROR_AT_LINE
    	AC_FUNC_FORK
    	AC_PROG_GCC_TRADITIONAL
    	AC_FUNC_MALLOC
    	AC_FUNC_MEMCMP
    	AC_FUNC_REALLOC
    	AC_FUNC_SELECT_ARGTYPES
    	AC_TYPE_SIGNAL
    	AC_FUNC_STAT
    	AC_FUNC_UTIME_NULL
    	AC_FUNC_VPRINTF
    	AC_CHECK_FUNCS([bzero floor gethostbyname gethrtime gettimeofday \
    			inet_ntoa memset mkdir pathconf pow regcomp select setlocale socket \
    			strchr strdup strerror strrchr strstr strtol utime])
    
    	dnl *****************************************
    	dnl Check for header files
    	dnl *****************************************
    	SFLPHONE_LIBS="$SFLPHONE_LIBS"
    
    	dnl Check for GNU ccRTP
    	PKG_PROG_PKG_CONFIG
    
    #Trying to set PJSIP using pkg-config
    #PKG_CHECK_MODULES(SIP, libpj-sfl, have_libpj=true, have_libpj=false)
    #if test "x${have_libpj}" = "xfalse" ; then
    #   AC_MSG_ERROR([PJSIP not found. http://www.pjsip.org/download.htm])
    #fi
    #AC_SUBST(SIP_CFLAGS)
    
    	dnl Check for uuid development package - name: uuid-dev 
    	dnl PKG_CHECK_MODULES(UUID, uuid >= ${UUID_MIN_VERSION})
    	dnl AC_SUBST(UUID_CFLAGS)
    dnl AC_SUBST(UUID_LIBS)
    	UUID_MIN_VERSION=1.0
    	PKG_CHECK_MODULES(UUID, uuid >= ${UUID_MIN_VERSION}, HAVE_UUID=true, HAVE_UUID=false);
    	AC_SUBST(UUID_CFLAGS)
    AC_SUBST(UUID_LIBS)
    
    	dnl Check for alsa development package - name: libasound2-dev 
    	LIBASOUND2_MIN_VERSION=1.0
    	PKG_CHECK_MODULES(ALSA, alsa >= ${LIBASOUND2_MIN_VERSION})
    	AC_SUBST(ALSA_CFLAGS)
    AC_SUBST(ALSA_LIBS)
    
    	dnl Check for pulseaudio development package - name: libpulse-dev 
    	LIBPULSE_MIN_VERSION=0.9.6
    	PKG_CHECK_MODULES(PULSEAUDIO, libpulse >= ${LIBPULSE_MIN_VERSION})
    	AC_SUBST(PULSEAUDIO_LIBS)
    AC_SUBST(PULSEAUDIO_CFLAGS)
    
    	dnl Check for the samplerate development package - name: libsamplerate0-dev
    	LIBSAMPLERATE_MIN_VERSION=0.1.2
    	PKG_CHECK_MODULES(SAMPLERATE, samplerate >= ${LIBSAMPLERATE_MIN_VERSION})
    	AC_SUBST(SAMPLERATE_LIBS)
    AC_SUBST(SAMPLERATE_CFLAGS)
    
    	LIBCCGNU2_MIN_VERSION=1.3.1
    	PKG_CHECK_MODULES(CCGNU2, libccgnu2 >= ${LIBCCGNU2_MIN_VERSION})
    	AC_SUBST(CCGNU2_LIBS)
    AC_SUBST(CCGNU2_FLAGS)
    
    	LIBCCEXT2_MIN_VERSION=1.3.1
    	PKG_CHECK_MODULES(CCEXT2, libccext2 >= ${LIBCCEXT2_MIN_VERSION})
    	AC_SUBST(CCEXT2_LIBS)
    AC_SUBST(CCEXT2_CFLAGS)
    
    	LIBCCRT_MIN_VERSION=1.3.0
    	PKG_CHECK_MODULES(CCRTP, libccrtp1 >= ${LIBCCRT_MIN_VERSION})
    	AC_SUBST(CCRTP_LIBS)
    AC_SUBST(CCRTP_CFLAGS)
    
    	dnl Check for OpenSSL to link against pjsip and provide SIPS TLS support
    	PKG_CHECK_MODULES([libssl], libssl, , AC_MSG_ERROR([libssl is required]))
    	AC_SUBST(libssl_CFLAGS)
    AC_SUBST(libssl_LIBS)
    
    	dnl Check for libzrtpcpp, a ccRTP extension providing zrtp key exchange
    	LIBZRTPCPP_MIN_VERSION=1.3.0
    	PKG_CHECK_MODULES(ZRTPCPP, libzrtpcpp >= ${LIBZRTPCPP_MIN_VERSION})
    	AC_SUBST(ZRTPCPP_LIBS)
    AC_SUBST(ZRTPCPP_CFLAGS)
    
    
    dnl DBus-C++ detection (used to be in library own build system)
    	DBUS_REQUIRED_VERSION=0.60
    	PKG_CHECK_MODULES(dbus, [dbus-1 >= $DBUS_REQUIRED_VERSION],,
    			AC_MSG_ERROR([You need the DBus libraries (version 0.6 or better)]
    				[http://gitorious.org/dbus-cplusplus])
    			)
    	AC_SUBST(dbus_CFLAGS)
    AC_SUBST(dbus_LIBS)
    
    	DBUS_API_STABLE_VERSION=1.0.0
    	PKG_CHECK_EXISTS([dbus-1 < $DBUS_API_STABLE_VERSION],
    			[AC_DEFINE(DBUS_API_SUBJECT_TO_CHANGE, , [unstable DBus])]
    			)
    
    	DBUS_THREADS_INIT_DEFAULT_VERSION=0.93
    	PKG_CHECK_EXISTS([dbus-1 >= $DBUS_THREADS_INIT_DEFAULT_VERSION],
    			[AC_DEFINE(DBUS_HAS_THREADS_INIT_DEFAULT, , [dbus_threads_init_default (needs DBus >= 0.93)])]
    			)
    
    	DBUS_RECURSIVE_MUTEX_VERSION=0.95
    	PKG_CHECK_EXISTS([dbus-1 >= $DBUS_RECURSIVE_MUTEX_VERSION],
    			[AC_DEFINE(DBUS_HAS_RECURSIVE_MUTEX, , [DBus supports recursive mutexes (needs DBus >= 0.95)])]
    			)
    
    
    	AC_ARG_WITH(debug,
    			AS_HELP_STRING(
    				[--with-debug],
    				[Set 'full' to enable debugging information @<:@default=no@:>@]
    				),
    			[with_debug=${withval}],
    			[with_debug=no]
    			)
    	if test "x$with_debug" = "xfull" -o "x$with_debug" = "xyes"; then
    	CXXFLAGS="$USE_EXCEPTIONS $USER_INCLUDES -g -O0 -Wno-return-type"
    	else
    	CXXFLAGS="-g -Wall -O2"
    	fi
    
    AC_CHECK_LIB([expat], XML_ParserCreate_MM,
    		[AC_CHECK_HEADERS(expat.h, have_expat=true, have_expat=false)],
    	have_expat=false)
    
    if ! $have_expat; then
    AC_MSG_ERROR([You need the eXpat xml parser]
    		[http://expat.sourceforge.net/])
    fi
    
    xml_CFLAGS=
    xml_LIBS=-lexpat
    
    	AC_SUBST(xml_CFLAGS)
    AC_SUBST(xml_LIBS)
    
    AC_CHECK_LIB([pthread], pthread_create,
    		[AC_CHECK_HEADERS(pthread.h, have_pthread=true, have_pthread=false)],
    		have_pthread=false)
    
    	if test "$have_pthread" = "false"; then
    AC_MSG_ERROR([You need the POSIX Thread library (pthreads)])	
    	fi
    
    
    AC_CHECK_LIB([pcre], pcre_free,
    		[AC_CHECK_HEADERS(pcre.h, have_pcre=true, have_pcre=false)],
    		have_pcre=false)
    
    	if test "$have_pcre" = "false"; then
    AC_MSG_ERROR([You need the Perl-Compatible Regular Expressions library (pcre)])	
    	fi
    
    	PCRE_LIBS=-lpcre
    	PCRE_CFLAGS=
    	AC_SUBST(PCRE_LIBS)
    AC_SUBST(PCRE_CFLAGS)
    
    
    
    # For the tools/, we need libdbus-c++ for the "build" architecture as well
    
    	AM_CONDITIONAL(CROSS_COMPILING, test "$cross_compiling" = "yes")
    
    	AC_ARG_WITH(build-libdbus-cxx,
    			AS_HELP_STRING([--with-build-libdbus-cxx],
    				[For cross compilation: path to libdbus-cxx which was compiled for the 'build' system.]),
    			[ BUILD_LIBDBUS_CXX_DIR=${withval} ],
    			[ BUILD_LIBDBUS_CXX_DIR="\$(top_builddir)" ]
    			)
    AC_SUBST(BUILD_LIBDBUS_CXX_DIR)
    
    	dnl Check for libcppunit-dev
    	CPPUNIT_MIN_VERSION=1.12
    	PKG_CHECK_MODULES(CPPUNIT, cppunit >= ${CPPUNIT_MIN_VERSION}, AM_CONDITIONAL(BUILD_TEST, test 1 = 1 ), AM_CONDITIONAL(BUILD_TEST, test 0 = 1 ))
    AC_SUBST(CPPUNIT_LIBS)
    
    # check for libgsm1 (doesn't use pkg-config)
    	dnl Check for libgsm
    AC_ARG_WITH([gsm],
    		[AS_HELP_STRING([--without-gsm],
    			[disable support for gsm codec])],
    		[],
    		[with_gsm=yes])
    
    LIBGSM=
    AS_IF([test "x$with_gsm" != xno],
    		[AC_CHECK_HEADER([gsm/gsm.h], , AC_MSG_FAILURE([Unable to find the libgsm1 headers (you may need to install the dev package).  You may use --without-gsm to compile without gsm codec support.]))]
    		[AC_CHECK_LIB([gsm], [gsm_decode],
    			[],
    			[AC_MSG_FAILURE(
    				[libgsm link test failed.   You may use --without-gsm to compile without gsm codec support.])]
    			)
    		]
    	 )
    
    AC_DEFINE([HAVE_GSM], test "x$with_gsm" = "xyes", [Define if you have libgsm])
    AM_CONDITIONAL(BUILD_GSM, test "x$with_gsm" = "xyes" )
    
    	dnl Check for libspeex
    AC_ARG_WITH([speex],
    		[AS_HELP_STRING([--without-speex],
    			[disable support for speex codec])],
    		[],
    		[with_speex=yes])
    
    AS_IF([test "x$with_speex" != xno],
    		[AC_CHECK_HEADER([speex/speex.h], , AC_MSG_FAILURE([Unable to find the libspeex headers (you may need to install the dev package).  You may use --without-speex to compile without speex codec support.]))]
    		[AC_CHECK_HEADER([speex/speex_preprocess.h], , AC_MSG_FAILURE([Unable to find the libspeexdsp headers (you may need to install the libspeexdsp-dev package).  You may use --without-speex to compile without speex codec support.]))]
    		[AC_CHECK_LIB([speex], [speex_decode_int],
    			[],
    			[AC_MSG_FAILURE(
    				[libspeex link test failed.   You may use --without-speex to compile without speex codec support.])]
    			)
    		]
    		dnl More advanced check in case the libspeexdsp is not installed
    		AC_SEARCH_LIBS(speex_preprocess_run, speexdsp, HAVE_SPEEXDSP="yes", HAVE_SPEEXDSP="no", [])
    	 )
    
    AC_DEFINE([HAVE_SPEEX], test "x$with_speex" = "xyes", [Define if you have libspeex])
    	AM_CONDITIONAL(BUILD_SPEEX, test "x$with_speex" = "xyes" )
    AM_CONDITIONAL(ENABLE_SPEEXDSP, test  $HAVE_SPEEXDSP = yes)
    
    	dnl Check for celt. Compile it only if a recent enough version is found
    	LIBCELT_MIN_VERSION=0.7.1
    PKG_CHECK_MODULES(CELT, celt >= ${LIBCELT_MIN_VERSION}, AM_CONDITIONAL(BUILD_CELT, test 1 = 1 ), AM_CONDITIONAL(BUILD_CELT, test 0 = 1 ))
    
    	dnl Check for IAX
    AC_ARG_WITH([iax2],
    		[AS_HELP_STRING([--without-iax2],
    			[disable support for the iax2 protocol])],
    		[],
    		[with_iax2=yes])
    
    AC_DEFINE([HAVE_IAX], test "x$with_iax2" = "xyes", [Define if you have libiax2])
    AM_CONDITIONAL(USE_IAX, test "x$with_iax2" = "xyes" )
    
    	dnl Check for network-manager
    AC_ARG_WITH([networkmanager],
    		[AS_HELP_STRING([--without-networkmanager],
    			[disable support for network-manager events])],
    		[],
    		[with_networkmanager=yes])
    
    AM_CONDITIONAL(USE_NETWORKMANAGER, test "x$with_networkmanager" = "xyes" )
    
    # check for doxygen, mostly stolen from http://log4cpp.sourceforge.net/
    # ----------------------------------------------------------------------------
    AC_DEFUN([BB_ENABLE_DOXYGEN],
    		[
    		AC_ARG_ENABLE(doxygen, [  --enable-doxygen        enable documentation generation with doxygen (auto)])
    		AC_ARG_ENABLE(dot, [  --enable-dot            use 'dot' to generate graphs in doxygen (auto)])              
    		AC_ARG_ENABLE(html-docs, [  --enable-html-docs      enable HTML generation with doxygen (yes)], [], [ enable_html_docs=yes])              
    		AC_ARG_ENABLE(latex-docs, [  --enable-latex-docs     enable LaTeX documentation generation with doxygen (no)], [], [ enable_latex_docs=no])              
    		if test "x$enable_doxygen" = xno; then
    		enable_doc=no
    		else 
    		AC_PATH_PROG(DOXYGEN, doxygen, , $PATH)
    		if test x$DOXYGEN = x; then
    		if test "x$enable_doxygen" = xyes; then
    		AC_MSG_ERROR([could not find doxygen])
    		fi
    		enable_doc=no
    		else
    		enable_doc=yes
    		AC_PATH_PROG(DOT, dot, , $PATH)
    		fi
    		fi
    		AM_CONDITIONAL(DOC, test x$enable_doc = xyes)
    
    	if test x$DOT = x; then
    	if test "x$enable_dot" = xyes; then
    AC_MSG_ERROR([could not find dot])
    	fi
    	enable_dot=no
    	else
    	enable_dot=yes
    	fi
    	AM_CONDITIONAL(ENABLE_DOXYGEN, test x$enable_doc = xtrue)
    	AC_SUBST(enable_dot)
    	AC_SUBST(enable_html_docs)
    AC_SUBST(enable_latex_docs)
    	])
    # Acutally perform the doxygen check
    	BB_ENABLE_DOXYGEN
    
    	dnl Datadir directory
    	sflphone_datadir=$datadir/sflphone
    AC_SUBST(sflphone_datadir)
    
    	dnl Dbus Service activation part
    	DBUS_SERVICES_DIR="$datadir/dbus-1/services"
    AC_SUBST(DBUS_SERVICES_DIR)
    	AC_DEFINE_UNQUOTED(DBUS_SERVICES_DIR, "$DBUS_SERVICES_DIR", [Where services dir for DBUS is])
    
    # Go!
    	AC_SUBST(SFLPHONE_CFLAGS)
    AC_SUBST(SFLPHONE_LIBS)
    	AC_OUTPUT
    	AC_MSG_NOTICE([[Configuration done! Please make sure that pjsip library (libs/pjproject) has already been compiled. Run `make' to build the software.]])