aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b>2008-08-14 02:02:15 +0000
committerkpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b>2008-08-14 02:02:15 +0000
commit8cbd2aebf4de1a44935094c126132ec113210344 (patch)
treec3af6a96c9f5dec9b600769a37e09775dfdcbecb
parent61f4e5d845ba36c2ff238218c3ef8d2a45fd0be0 (diff)
add support for Zaptel versions that contain the new transcoder interface
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@137677 f38db490-d61c-443f-a65b-d21fe96a405b
-rw-r--r--build_tools/menuselect-deps.in2
-rw-r--r--channels/chan_dahdi.c2
-rw-r--r--codecs/codec_dahdi.c2
-rwxr-xr-xconfigure63
-rw-r--r--configure.ac23
-rw-r--r--include/asterisk/dahdi_compat.h12
6 files changed, 90 insertions, 14 deletions
diff --git a/build_tools/menuselect-deps.in b/build_tools/menuselect-deps.in
index c85144872..2613ea90e 100644
--- a/build_tools/menuselect-deps.in
+++ b/build_tools/menuselect-deps.in
@@ -1,6 +1,7 @@
ASOUND=@PBX_ALSA@
CURL=@PBX_CURL@
DAHDI=@PBX_DAHDI@
+DAHDI_TRANSCODE=@PBX_DAHDI_TRANSCODE@
FREETDS=@PBX_FREETDS@
GSM=@PBX_GSM@
GTK=@PBX_GTK@
@@ -33,7 +34,6 @@ UNIXODBC=@PBX_UNIXODBC@
VORBIS=@PBX_VORBIS@
VPBAPI=@PBX_VPB@
ZAPTEL=@PBX_ZAPTEL@
-DAHDI_TRANSCODE=@PBX_DAHDI_TRANSCODE@
ZLIB=@PBX_ZLIB@
ISDNNET=@PBX_ISDNNET@
MISDN=@PBX_MISDN@
diff --git a/channels/chan_dahdi.c b/channels/chan_dahdi.c
index a1c0ecb91..361c040b5 100644
--- a/channels/chan_dahdi.c
+++ b/channels/chan_dahdi.c
@@ -39,7 +39,7 @@
/*** MODULEINFO
<depend>res_smdi</depend>
- <depend>DAHDI</depend>
+ <depend>dahdi</depend>
<depend>tonezone</depend>
<depend>res_features</depend>
<use>pri</use>
diff --git a/codecs/codec_dahdi.c b/codecs/codec_dahdi.c
index 2c7e292cf..00dd94bb2 100644
--- a/codecs/codec_dahdi.c
+++ b/codecs/codec_dahdi.c
@@ -44,7 +44,6 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#include <sys/ioctl.h>
#include <errno.h>
#include <sys/mman.h>
-#include <dahdi/user.h>
#include "asterisk/lock.h"
#include "asterisk/translate.h"
@@ -56,6 +55,7 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#include "asterisk/channel.h"
#include "asterisk/utils.h"
#include "asterisk/linkedlists.h"
+#include "asterisk/dahdi_compat.h"
#define BUFFER_SAMPLES 8000
diff --git a/configure b/configure
index 7a8fb1ff0..d9bf7ac8f 100755
--- a/configure
+++ b/configure
@@ -1,5 +1,5 @@
#! /bin/sh
-# From configure.ac Revision: 136560 .
+# From configure.ac Revision: 136999 .
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.61 for asterisk 1.4.
#
@@ -17146,7 +17146,6 @@ fi
fi
-PBX_DAHDI_TRANSCODE=0
if test "${USE_DAHDI}" != "no" ; then
if test "x${PBX_DAHDI}" != "x1"; then
@@ -30551,6 +30550,66 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
if test "${ac_cv_zaptel_vldtmf}" = "yes"; then
PBX_ZAPTEL_VLDTMF=1
fi
+ { echo "$as_me:$LINENO: checking for zt_transcoder_info in zaptel/zaptel.h" >&5
+echo $ECHO_N "checking for zt_transcoder_info 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 <zaptel/zaptel.h>
+int
+main ()
+{
+int foo = sizeof(struct zt_transcoder_info);
+ ;
+ 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_DAHDI_TRANSCODE=1
+ fi
fi
diff --git a/configure.ac b/configure.ac
index b49a28ba7..e7f91a3d9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -438,7 +438,6 @@ if test "x${host_os}" = "xlinux-gnu" ; then
AST_EXT_LIB_CHECK([CAP], [cap], [cap_from_text], [sys/capability.h])
fi
-PBX_DAHDI_TRANSCODE=0
if test "${USE_DAHDI}" != "no" ; then
AST_C_DEFINE_CHECK([DAHDI], [DAHDI_CODE], [dahdi/user.h])
if test "x${PBX_DAHDI}" = "x1" ; then
@@ -1492,6 +1491,28 @@ if test "${PBX_ZAPTEL}" = 1 && test "x${PBX_DAHDI}" != "x1"; then
if test "${ac_cv_zaptel_vldtmf}" = "yes"; then
PBX_ZAPTEL_VLDTMF=1
fi
+ AC_MSG_CHECKING(for zt_transcoder_info 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 <zaptel/zaptel.h>],
+ [int foo = sizeof(struct zt_transcoder_info);])
+ ],
+ [ 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_DAHDI_TRANSCODE=1
+ fi
fi
AC_SUBST(PBX_ZAPTEL_VLDTMF)
AC_SUBST(PBX_DAHDI_TRANSCODE)
diff --git a/include/asterisk/dahdi_compat.h b/include/asterisk/dahdi_compat.h
index b2bf016b8..efb88372a 100644
--- a/include/asterisk/dahdi_compat.h
+++ b/include/asterisk/dahdi_compat.h
@@ -150,10 +150,8 @@
#define DAHDI_SPANSTAT ZT_SPANSTAT
#define DAHDI_SPECIFY ZT_SPECIFY
#define DAHDI_START ZT_START
-#define DAHDI_TCOP_ALLOCATE ZT_TCOP_ALLOCATE
-#define DAHDI_TCOP_GETINFO ZT_TCOP_GETINFO
-#define DAHDI_TCOP_RELEASE ZT_TCOP_RELEASE
-#define DAHDI_TCOP_TRANSCODE ZT_TCOP_TRANSCODE
+#define DAHDI_TC_ALLOCATE ZT_TC_ALLOCATE
+#define DAHDI_TC_GETINFO ZT_TC_GETINFO
#define DAHDI_TIMERACK ZT_TIMERACK
#define DAHDI_TIMERCONFIG ZT_TIMERCONFIG
#define DAHDI_TIMERPING ZT_TIMERPING
@@ -172,10 +170,8 @@
#define DAHDI_TONE_INFO ZT_TONE_INFO
#define DAHDI_TONE_RINGTONE ZT_TONE_RINGTONE
#define DAHDI_TONE_STUTTER ZT_TONE_STUTTER
-#define dahdi_transcode_header zt_transcode_header
-#define dahdi_transcode_info zt_transcode_info
-#define DAHDI_TRANSCODE_MAGIC ZT_TRANSCODE_MAGIC
-#define DAHDI_TRANSCODE_OP ZT_TRANSCODE_OP
+#define dahdi_transcoder_formats zt_transcoder_formats
+#define dahdi_transcoder_info zt_transcoder_info
#define DAHDI_vldtmf ZT_vldtmf
#define DAHDI_WINK ZT_WINK
#define HAVE_DAHDI HAVE_ZAPTEL