From f195c5d622bdb0afef8fbc02f5cdc655d37db35f Mon Sep 17 00:00:00 2001 From: "Kevin P. Fleming" Date: Mon, 1 Jan 2007 23:34:35 +0000 Subject: [PATCH] check specifically for VLDTMF and transcoding support in the system's Zaptel installation, and make only the modules that need those features dependent on them (this will allow building the other Zaptel-using parts of Asterisk against older versions of Zaptel or those on other platforms that haven't caught up yet to the Linux version) git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@49102 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- build_tools/menuselect-deps.in | 3 +- channels/chan_zap.c | 2 +- codecs/codec_zap.c | 2 +- configure | 118 ++++++++++++++++++++++++--------- configure.ac | 63 +++++++++++------- 5 files changed, 130 insertions(+), 58 deletions(-) diff --git a/build_tools/menuselect-deps.in b/build_tools/menuselect-deps.in index f19723cf1f..d68166cf08 100644 --- a/build_tools/menuselect-deps.in +++ b/build_tools/menuselect-deps.in @@ -27,8 +27,9 @@ TONEZONE=@PBX_TONEZONE@ UNIXODBC=@PBX_UNIXODBC@ VORBIS=@PBX_VORBIS@ VPBAPI=@PBX_VPB@ -WIN32=@OSISWIN32@ ZAPTEL=@PBX_ZAPTEL@ +ZAPTEL_VLDTMF=@PBX_ZAPTEL_VLDTMF@ +ZAPTEL_TRANSCODE=@PBX_ZAPTEL_TRANSCODE@ ZLIB=@PBX_ZLIB@ ISDNNET=@PBX_ISDNNET@ MISDN=@PBX_MISDN@ diff --git a/channels/chan_zap.c b/channels/chan_zap.c index 78c2d6f655..eb1ab2d0cf 100644 --- a/channels/chan_zap.c +++ b/channels/chan_zap.c @@ -38,7 +38,7 @@ */ /*** MODULEINFO - zaptel + zaptel_vldtmf tonezone pri ***/ diff --git a/codecs/codec_zap.c b/codecs/codec_zap.c index 2812e338de..e5d1f0ec4a 100644 --- a/codecs/codec_zap.c +++ b/codecs/codec_zap.c @@ -27,7 +27,7 @@ */ /*** MODULEINFO - zaptel + zaptel_transcode ***/ #include "asterisk.h" diff --git a/configure b/configure index c93b02ebaa..24de57fd6a 100755 --- a/configure +++ b/configure @@ -1,5 +1,5 @@ #! /bin/sh -# From configure.ac Revision: 48960 . +# From configure.ac Revision: 49022 . # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.61. # @@ -844,6 +844,8 @@ OPENH323_LIBDIR OPENH323_SUFFIX OPENH323_BUILD QTMOC +PBX_ZAPTEL_VLDTMF +PBX_ZAPTEL_TRANSCODE EDITLINE_LIB PBX_H323 PBX_IXJUSER @@ -28356,8 +28358,8 @@ fi if test "${USE_ZAPTEL}" != "no"; then - { echo "$as_me:$LINENO: checking for ZT_TONE_DTMF_BASE in zaptel.h" >&5 -echo $ECHO_N "checking for ZT_TONE_DTMF_BASE in zaptel.h... $ECHO_C" >&6; } + { echo "$as_me:$LINENO: checking for ZT_DIAL_OP_CANCEL in zaptel/zaptel.h" >&5 +echo $ECHO_N "checking for ZT_DIAL_OP_CANCEL in zaptel/zaptel.h... $ECHO_C" >&6; } saved_cppflags="${CPPFLAGS}" if test "x${ZAPTEL_DIR}" != "x"; then CPPFLAGS="${CPPFLAGS} -I${ZAPTEL_DIR}/include" @@ -28373,7 +28375,7 @@ cat >>conftest.$ac_ext <<_ACEOF int main () { -int foo = ZT_TONE_DTMF_BASE; +int foo = ZT_DIAL_OP_CANCEL; ; return 0; } @@ -28437,26 +28439,25 @@ echo "$as_me: *** including --without-zaptel." >&6;} fi fi -if test "${USE_ZAPTEL}" != "no"; then - if test "${PBX_ZAPTEL}" != "1"; then - { echo "$as_me:$LINENO: checking for ZT_DIAL_OP_CANCEL in zaptel.h" >&5 -echo $ECHO_N "checking for ZT_DIAL_OP_CANCEL in zaptel.h... $ECHO_C" >&6; } - saved_cppflags="${CPPFLAGS}" - if test "x${ZAPTEL_DIR}" != "x"; then - CPPFLAGS="${CPPFLAGS} -I${ZAPTEL_DIR}/include" - fi - cat >conftest.$ac_ext <<_ACEOF +if test "${PBX_ZAPTEL}" = 1; then + { echo "$as_me:$LINENO: checking for ZT_TONE_DTMF_BASE in zaptel/zaptel.h" >&5 +echo $ECHO_N "checking for ZT_TONE_DTMF_BASE in zaptel/zaptel.h... $ECHO_C" >&6; } + saved_cppflags="${CPPFLAGS}" + if test "x${ZAPTEL_DIR}" != "x"; then + CPPFLAGS="${CPPFLAGS} -I${ZAPTEL_DIR}/include" + fi + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#include +#include int main () { -int foo = ZT_DIAL_OP_CANCEL; +int foo = ZT_TONE_DTMF_BASE; ; return 0; } @@ -28481,7 +28482,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 } && test -s conftest.$ac_objext; then { echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6; } - ac_cv_zaptel_h="yes" + ac_cv_zaptel_vldtmf="yes" else echo "$as_me: failed program was:" >&5 @@ -28489,29 +28490,80 @@ sed 's/^/| /' conftest.$ac_ext >&5 { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6; } - ac_cv_zaptel_h="no" + ac_cv_zaptel_vldtmf="no" fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - CPPFLAGS="${saved_cppflags}" - if test "${ac_cv_zaptel_h}" = "yes"; then - { echo "$as_me:$LINENO: ***" >&5 -echo "$as_me: ***" >&6;} - { echo "$as_me:$LINENO: *** The Zaptel installation on this system is too old" >&5 -echo "$as_me: *** The Zaptel installation on this system is too old" >&6;} - { echo "$as_me:$LINENO: *** to be useable with this version of Asterisk." >&5 -echo "$as_me: *** to be useable with this version of Asterisk." >&6;} - { echo "$as_me:$LINENO: *** Either upgrade your Zaptel installation, or run configure" >&5 -echo "$as_me: *** Either upgrade your Zaptel installation, or run configure" >&6;} - { echo "$as_me:$LINENO: *** including --without-zaptel." >&5 -echo "$as_me: *** including --without-zaptel." >&6;} - exit 1 - fi + CPPFLAGS="${saved_cppflags}" + if test "${ac_cv_zaptel_vldtmf}" = "yes"; then + PBX_ZAPTEL_VLDTMF=1 + fi + { echo "$as_me:$LINENO: checking for ZT_TCOP_TRANSCODE in zaptel/zaptel.h" >&5 +echo $ECHO_N "checking for ZT_TCOP_TRANSCODE in zaptel/zaptel.h... $ECHO_C" >&6; } + saved_cppflags="${CPPFLAGS}" + if test "x${ZAPTEL_DIR}" != "x"; then + CPPFLAGS="${CPPFLAGS} -I${ZAPTEL_DIR}/include" + fi + cat >conftest.$ac_ext <<_ACEOF + + /* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +int +main () +{ +int foo = ZT_TCOP_TRANSCODE; + ; + return 0; +} + +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + { echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } + ac_cv_zaptel_transcode="yes" + +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } + ac_cv_zaptel_transcode="no" + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CPPFLAGS="${saved_cppflags}" + if test "${ac_cv_zaptel_transcode}" = "yes"; then + PBX_ZAPTEL_TRANSCODE=1 fi fi + + EDITLINE_LIB="" if test "x$TERMCAP_LIB" != "x" ; then EDITLINE_LIB="$TERMCAP_LIB" @@ -29876,6 +29928,8 @@ OPENH323_LIBDIR!$OPENH323_LIBDIR$ac_delim OPENH323_SUFFIX!$OPENH323_SUFFIX$ac_delim OPENH323_BUILD!$OPENH323_BUILD$ac_delim QTMOC!$QTMOC$ac_delim +PBX_ZAPTEL_VLDTMF!$PBX_ZAPTEL_VLDTMF$ac_delim +PBX_ZAPTEL_TRANSCODE!$PBX_ZAPTEL_TRANSCODE$ac_delim EDITLINE_LIB!$EDITLINE_LIB$ac_delim PBX_H323!$PBX_H323$ac_delim PBX_IXJUSER!$PBX_IXJUSER$ac_delim @@ -29887,7 +29941,7 @@ CURL!$CURL$ac_delim LTLIBOBJS!$LTLIBOBJS$ac_delim _ACEOF - if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 40; then + if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 42; then break elif $ac_last_try; then { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 diff --git a/configure.ac b/configure.ac index 43ed4a332c..4caa617cd3 100644 --- a/configure.ac +++ b/configure.ac @@ -942,7 +942,7 @@ AC_LANG_POP AST_EXT_LIB_CHECK([ZLIB], [z], [compress], [zlib.h]) if test "${USE_ZAPTEL}" != "no"; then - AC_MSG_CHECKING(for ZT_TONE_DTMF_BASE in zaptel.h) + AC_MSG_CHECKING(for ZT_DIAL_OP_CANCEL in zaptel/zaptel.h) saved_cppflags="${CPPFLAGS}" if test "x${ZAPTEL_DIR}" != "x"; then CPPFLAGS="${CPPFLAGS} -I${ZAPTEL_DIR}/include" @@ -951,7 +951,7 @@ if test "${USE_ZAPTEL}" != "no"; then [ AC_LANG_PROGRAM( [#include ], - [int foo = ZT_TONE_DTMF_BASE;]) + [int foo = ZT_DIAL_OP_CANCEL;]) ], [ AC_MSG_RESULT(yes) ac_cv_zaptel_h="yes" @@ -977,37 +977,54 @@ if test "${USE_ZAPTEL}" != "no"; then fi fi -if test "${USE_ZAPTEL}" != "no"; then - if test "${PBX_ZAPTEL}" != "1"; then - AC_MSG_CHECKING(for ZT_DIAL_OP_CANCEL in zaptel.h) - saved_cppflags="${CPPFLAGS}" - if test "x${ZAPTEL_DIR}" != "x"; then - CPPFLAGS="${CPPFLAGS} -I${ZAPTEL_DIR}/include" - fi - AC_COMPILE_IFELSE( +if test "${PBX_ZAPTEL}" = 1; then + AC_MSG_CHECKING(for ZT_TONE_DTMF_BASE in zaptel/zaptel.h) + saved_cppflags="${CPPFLAGS}" + if test "x${ZAPTEL_DIR}" != "x"; then + CPPFLAGS="${CPPFLAGS} -I${ZAPTEL_DIR}/include" + fi + AC_COMPILE_IFELSE( [ AC_LANG_PROGRAM( - [#include ], - [int foo = ZT_DIAL_OP_CANCEL;]) + [#include ], + [int foo = ZT_TONE_DTMF_BASE;]) ], [ AC_MSG_RESULT(yes) - ac_cv_zaptel_h="yes" + ac_cv_zaptel_vldtmf="yes" ], [ AC_MSG_RESULT(no) - ac_cv_zaptel_h="no" + ac_cv_zaptel_vldtmf="no" ] ) - CPPFLAGS="${saved_cppflags}" - if test "${ac_cv_zaptel_h}" = "yes"; then - AC_MSG_NOTICE([***]) - AC_MSG_NOTICE([*** The Zaptel installation on this system is too old]) - AC_MSG_NOTICE([*** to be useable with this version of Asterisk.]) - AC_MSG_NOTICE([*** Either upgrade your Zaptel installation, or run configure]) - AC_MSG_NOTICE([*** including --without-zaptel.]) - exit 1 - fi + CPPFLAGS="${saved_cppflags}" + if test "${ac_cv_zaptel_vldtmf}" = "yes"; then + PBX_ZAPTEL_VLDTMF=1 + fi + AC_MSG_CHECKING(for ZT_TCOP_TRANSCODE in zaptel/zaptel.h) + saved_cppflags="${CPPFLAGS}" + if test "x${ZAPTEL_DIR}" != "x"; then + CPPFLAGS="${CPPFLAGS} -I${ZAPTEL_DIR}/include" + fi + AC_COMPILE_IFELSE( + [ + AC_LANG_PROGRAM( + [#include ], + [int foo = ZT_TCOP_TRANSCODE;]) + ], + [ AC_MSG_RESULT(yes) + ac_cv_zaptel_transcode="yes" + ], + [ AC_MSG_RESULT(no) + ac_cv_zaptel_transcode="no" + ] + ) + CPPFLAGS="${saved_cppflags}" + if test "${ac_cv_zaptel_transcode}" = "yes"; then + PBX_ZAPTEL_TRANSCODE=1 fi fi +AC_SUBST(PBX_ZAPTEL_VLDTMF) +AC_SUBST(PBX_ZAPTEL_TRANSCODE) EDITLINE_LIB="" if test "x$TERMCAP_LIB" != "x" ; then