]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
* mISDN >= 1.2 provides a dsp pipeline for i.e. echo cancellation modules, make chan_...
authorNadi Sarrar <ns@beronet.com>
Mon, 26 Mar 2007 15:25:53 +0000 (15:25 +0000)
committerNadi Sarrar <ns@beronet.com>
Mon, 26 Mar 2007 15:25:53 +0000 (15:25 +0000)
* add a check for linux/mISDNdsp.h to configure.ac and update the autogenerated files: 'configure', 'autoconfig.h.in'
  (the 'configure' script was not in sync with the latest configure.ac, so the diff is a bit bigger than expected).

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@59202 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/chan_misdn.c
channels/misdn/Makefile
channels/misdn/chan_misdn_config.h
channels/misdn/isdn_lib.c
channels/misdn/isdn_lib.h
channels/misdn_config.c
configure
configure.ac
include/asterisk/autoconfig.h.in

index e2bd6c275793cf2928c6ec4a469b164190f434ed..72cdfad2ca9f45ef3807a6ce95ab20d90cd02cb3 100644 (file)
@@ -351,7 +351,11 @@ int add_out_calls(int port);
 int add_in_calls(int port);
 
 
+#ifdef MISDN_1_2
+static int update_pipeline_config(struct misdn_bchannel *bc);
+#else
 static int update_ec_config(struct misdn_bchannel *bc);
+#endif
 
 
 
@@ -1034,7 +1038,11 @@ static void print_bc_info (int fd, struct chan_list* help, struct misdn_bchannel
                        "  --> activated: %d\n"
                        "  --> state: %s\n"
                        "  --> capability: %s\n"
+#ifdef MISDN_1_2
+                       "  --> pipeline: %s\n"
+#else
                        "  --> echo_cancel: %d\n"
+#endif
                        "  --> notone : rx %d tx:%d\n"
                        "  --> bc_hold: %d\n",
                        help->ast->name,
@@ -1047,7 +1055,11 @@ static void print_bc_info (int fd, struct chan_list* help, struct misdn_bchannel
                        bc->active,
                        bc_state2str(bc->bc_state),
                        bearer2str(bc->capability),
-                       bc->ec_enable,
+#ifdef MISDN_1_2
+                       bc->pipeline,
+#else
+                       bc->ec_enable,
+#endif
 
                        help->norxtone,help->notxtone,
                        bc->holded
@@ -1275,7 +1287,11 @@ static int misdn_toggle_echocancel (int fd, int argc, char *argv[])
                        tmp->toggle_ec=tmp->toggle_ec?0:1;
 
                        if (tmp->toggle_ec) {
+#ifdef MISDN_1_2
+                               update_pipeline_config(tmp->bc);
+#else
                                update_ec_config(tmp->bc);
+#endif
                                manager_ec_enable(tmp->bc);
                        } else {
                                manager_ec_disable(tmp->bc);
@@ -1616,6 +1632,25 @@ void debug_numplan(int port, int numplan, char *type)
 
 
 
+#ifdef MISDN_1_2
+static int update_pipeline_config(struct misdn_bchannel *bc)
+{
+       int ec;
+
+       misdn_cfg_get(bc->port, MISDN_CFG_PIPELINE, bc->pipeline, sizeof(bc->pipeline));
+
+       if (*bc->pipeline)
+               return 0;
+
+       misdn_cfg_get(bc->port, MISDN_CFG_ECHOCANCEL, &ec, sizeof(int));
+       if (ec == 1)
+               snprintf(bc->pipeline, sizeof(bc->pipeline) - 1, "mg2ec");
+       else if (ec > 1)
+               snprintf(bc->pipeline, sizeof(bc->pipeline) - 1, "mg2ec(deftaps=%d)", ec);
+
+       return 0;
+}
+#else
 static int update_ec_config(struct misdn_bchannel *bc)
 {
        int ec;
@@ -1629,17 +1664,10 @@ static int update_ec_config(struct misdn_bchannel *bc)
                bc->ec_enable=1;
                bc->ec_deftaps=ec;
        }
-#ifdef WITH_ECHOTRAINING 
-       int ectr;
-       misdn_cfg_get( port, MISDN_CFG_ECHOTRAINING, &ectr, sizeof(int));
-       
-       if ( ectr >= 0 ) {
-               bc->ec_training=ectr;
-       }
-#endif
 
        return 0;
 }
+#endif
 
 
 static int read_config(struct chan_list *ch, int orig) {
@@ -1714,7 +1742,11 @@ static int read_config(struct chan_list *ch, int orig) {
        
        ast_copy_string (ast->context,ch->context,sizeof(ast->context));        
 
+#ifdef MISDN_1_2
+       update_pipeline_config(bc);
+#else
        update_ec_config(bc);
+#endif
 
        {
                int eb3;
@@ -1987,9 +2019,15 @@ static int misdn_call(struct ast_channel *ast, char *dest, int timeout)
                int bridging;
                misdn_cfg_get( 0, MISDN_GEN_BRIDGING, &bridging, sizeof(int));
                if (bridging && ch->other_ch) {
-                       chan_misdn_log(0, port, "Disabling EC on both Sides\n");        
+#ifdef MISDN_1_2
+                       chan_misdn_log(0, port, "Disabling EC (aka Pipeline) on both Sides\n");
+                       *ch->bc->pipeline=0;
+                       *ch->other_ch->bc->pipeline=0;
+#else
+                       chan_misdn_log(0, port, "Disabling EC on both Sides\n");
                        ch->bc->ec_enable=0;
                        ch->other_ch->bc->ec_enable=0;
+#endif
                }
                
                r=misdn_lib_send_event( newbc, EVENT_SETUP );
@@ -2482,7 +2520,11 @@ static struct ast_frame *process_ast_dsp(struct chan_list *tmp, struct ast_frame
                        isdn_lib_update_rxgain(tmp->bc);
                        tmp->bc->txgain = 0;
                        isdn_lib_update_txgain(tmp->bc);
+#ifdef MISDN_1_2
+                       *tmp->bc->pipeline = 0;
+#else
                        tmp->bc->ec_enable = 0;
+#endif
                        isdn_lib_update_ec(tmp->bc);
                        isdn_lib_stop_dtmf(tmp->bc);
                        switch (tmp->faxdetect) {
@@ -4985,14 +5027,22 @@ static int misdn_set_opt_exec(struct ast_channel *chan, void *data)
                        
                        if (neglect) {
                                chan_misdn_log(1, ch->bc->port, " --> disabled\n");
+#ifdef MISDN_1_2
+                               *ch->bc->pipeline=0;
+#else
                                ch->bc->ec_enable=0;
+#endif
                        } else {
+#ifdef MISDN_1_2
+                               update_pipeline_config(ch->bc);
+#else
                                ch->bc->ec_enable=1;
                                ch->bc->orig=ch->orginator;
                                tok++;
-                               if (tok) {
+                               if (*tok) {
                                        ch->bc->ec_deftaps=atoi(tok);
                                }
+#endif
                        }
                        
                        break;
index 895dc9dee1926f8b1a6630195c4da8208db6d151..85478225b8ee57abf06b43b7c7e22928499e764b 100644 (file)
@@ -1,6 +1,10 @@
 #
 # Makefile for chan_misdn support
 #
+ifneq ($(wildcard /usr/include/linux/mISDNdsp.h),)
+CFLAGS+=-DMISDN_1_2
+endif
+
 all:
 
 %.o: %.c
index 3012e86229888ce55a0f2a8d1ecc71a7040c3bfc..fc714853a39a095c0d54ef3d2b1ea2a8c8954d52 100644 (file)
@@ -52,9 +52,8 @@ enum misdn_cfg_elements {
        MISDN_CFG_EARLY_BCONNECT,      /* int (bool) */
        MISDN_CFG_INCOMING_EARLY_AUDIO,      /* int (bool) */
        MISDN_CFG_ECHOCANCEL,          /* int */
-       MISDN_CFG_ECHOCANCELWHENBRIDGED,  /* int (bool) */
-#ifdef WITH_ECHOTRAINGING
-       MISDN_CFG_ECHOTRAINING,        /* int (bool) */
+#ifdef MISDN_1_2
+       MISDN_CFG_PIPELINE,      /* char[] */
 #endif
 
 #ifdef WITH_BEROEC
index 3f33176a3754278eda22479ca5767e84ed919d92..607492bb15ac9d3ddfbb3ece2cb9d1fcae0ca82e 100644 (file)
@@ -590,14 +590,13 @@ static void empty_bc(struct misdn_bchannel *bc)
 
        bc->early_bconnect = 1;
        
+#ifdef MISDN_1_2
+       *bc->pipeline = 0;
+#else
        bc->ec_enable = 0;
        bc->ec_deftaps = 128;
-       bc->ec_whenbridged = 0;
-
-#ifdef EC_TRAIN
-       bc->ec_training = 1;
 #endif
-       
+
        bc->orig=0;
   
        bc->cause=16;
@@ -4101,7 +4100,11 @@ void isdn_lib_update_txgain (struct misdn_bchannel *bc)
 
 void isdn_lib_update_ec (struct misdn_bchannel *bc)
 {
+#ifdef MISDN_1_2
+       if (*bc->pipeline)
+#else
        if (bc->ec_enable)
+#endif
                manager_ec_enable(bc);
        else
                manager_ec_disable(bc);
@@ -4280,19 +4283,24 @@ void misdn_lib_send_tone(struct misdn_bchannel *bc, enum tone_e tone)
 
 void manager_ec_enable(struct misdn_bchannel *bc)
 {
-       int ec_arr[2];
-
        struct misdn_stack *stack=get_stack_by_bc(bc);
        
        cb_log(4, stack?stack->port:0,"ec_enable\n");
 
        if (!misdn_cap_is_speech(bc->capability)) {
                cb_log(1, stack?stack->port:0, " --> no speech? cannot enable EC\n");
-               return;
-       }
+       } else {
+
+#ifdef MISDN_1_2
+       if (*bc->pipeline) {
+               cb_log(3, stack?stack->port:0,"Sending Control PIPELINE_CFG %s\n",bc->pipeline);
+               manager_ph_control_block(bc, PIPELINE_CFG, bc->pipeline, strlen(bc->pipeline) + 1);
+       }
+#else
+       int ec_arr[2];
 
        if (bc->ec_enable) {
-               cb_log(3, stack?stack->port:0,"Sending Control ECHOCAN_ON taps:%d training:%d\n",bc->ec_deftaps, bc->ec_training);
+               cb_log(3, stack?stack->port:0,"Sending Control ECHOCAN_ON taps:%d\n",bc->ec_deftaps);
        
                switch (bc->ec_deftaps) {
                case 4:
@@ -4312,14 +4320,12 @@ void manager_ec_enable(struct misdn_bchannel *bc)
                }
        
                ec_arr[0]=bc->ec_deftaps;
-#ifdef EC_TRAIN
-               ec_arr[1]=bc->ec_training;
-#else
                ec_arr[1]=0;
-#endif
                
                manager_ph_control_block(bc,  ECHOCAN_ON,  ec_arr, sizeof(ec_arr));
        }
+#endif
+       }
 }
 
 
@@ -4335,10 +4341,14 @@ void manager_ec_disable(struct misdn_bchannel *bc)
                return;
        }
 
+#ifdef MISDN_1_2
+       manager_ph_control_block(bc, PIPELINE_CFG, "", 0);
+#else
        if ( ! bc->ec_enable) {
                cb_log(3, stack?stack->port:0, "Sending Control ECHOCAN_OFF\n");
                manager_ph_control(bc,  ECHOCAN_OFF, 0);
        }
+#endif
 }
 
 struct misdn_stack* get_misdn_stack() {
index 5100ff38cdf77f940d6db3d73f433baaff7dd6ad..16f24b5f938634097d0047362bd0fd3116910757 100644 (file)
@@ -346,10 +346,12 @@ struct misdn_bchannel {
   
        /** list stuf **/
 
+#ifdef MISDN_1_2
+       char pipeline[128];
+#else
        int ec_enable;
        int ec_deftaps;
-       int ec_whenbridged;
-       int ec_training;
+#endif
 
 #ifdef WITH_BEROEC
        beroec_t *ec;
index 541400b24f2a4a924d7da444545dcfb960288dcf..786ca5b01b15dc5ee8d91505626af7a78e516a02 100644 (file)
@@ -235,9 +235,14 @@ static const struct misdn_cfg_spec port_spec[] = {
                "\tA value of zero turns echocancellation off.\n"
                "\n"
                "\tPossible values are: 0,32,64,128,256,yes(=128),no(=0)" },
-       { "echocancelwhenbridged", MISDN_CFG_ECHOCANCELWHENBRIDGED, MISDN_CTYPE_BOOL, "no", NONE,
-               "This disables echocancellation when the call is bridged between\n"
-               "\tmISDN channels" },
+#ifdef MISDN_1_2
+       { "pipeline", MISDN_CFG_PIPELINE, MISDN_CTYPE_STR, NO_DEFAULT, NONE,
+               "Set the configuration string for the mISDN dsp pipeline.\n"
+               "\n"
+               "\tExample for enabling the mg2 echo cancellation module with deftaps\n"
+               "\tset to 128:\n"
+               "\t\tmg2ec(deftaps=128)" },
+#endif
 #ifdef WITH_BEROEC
        { "bnechocancel", MISDN_CFG_BNECHOCANCEL, MISDN_CTYPE_BOOLINT, "yes", 64,
                "echotail in ms (1-200)\n"},
index 23b2e2ccc3a410cb98f0ee0db87317789d8727eb..226c11b536a0c1e9d7460d3e2fb75b2454a1b619 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,5 +1,5 @@
 #! /bin/sh
-# From configure.ac Revision: 58931 .
+# From configure.ac Revision: 58955 .
 # Guess values for system-dependent variables and create Makefiles.
 # Generated by GNU Autoconf 2.60.
 #
@@ -692,7 +692,6 @@ LN
 DOT
 STRIP
 WGET
-RUBBER
 FETCH
 DOWNLOAD
 acx_pthread_config
@@ -7406,47 +7405,6 @@ echo "${ECHO_T}no" >&6; }
 fi
 
 
-# Extract the first word of "rubber", so it can be a program name with args.
-set dummy rubber; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_path_RUBBER+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  case $RUBBER in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_RUBBER="$RUBBER" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then
-    ac_cv_path_RUBBER="$as_dir/$ac_word$ac_exec_ext"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_path_RUBBER" && ac_cv_path_RUBBER=":"
-  ;;
-esac
-fi
-RUBBER=$ac_cv_path_RUBBER
-if test -n "$RUBBER"; then
-  { echo "$as_me:$LINENO: result: $RUBBER" >&5
-echo "${ECHO_T}$RUBBER" >&6; }
-else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-
 if test "${WGET}" != ":" ; then
   DOWNLOAD=${WGET}
 else
@@ -22029,6 +21987,164 @@ echo "$as_me: *** without explicitly specifying --with-${SUPPSERV_OPTION}" >&6;}
    fi
 fi
 
+   if test "${ac_cv_header_linux_mISDNdsp_h+set}" = set; then
+  { echo "$as_me:$LINENO: checking for linux/mISDNdsp.h" >&5
+echo $ECHO_N "checking for linux/mISDNdsp.h... $ECHO_C" >&6; }
+if test "${ac_cv_header_linux_mISDNdsp_h+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_header_linux_mISDNdsp_h" >&5
+echo "${ECHO_T}$ac_cv_header_linux_mISDNdsp_h" >&6; }
+else
+  # Is the header compilable?
+{ echo "$as_me:$LINENO: checking linux/mISDNdsp.h usability" >&5
+echo $ECHO_N "checking linux/mISDNdsp.h usability... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+$ac_includes_default
+#include <linux/mISDNdsp.h>
+_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); } &&
+        { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
+  { (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_try") 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (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_try") 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_header_compiler=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+       ac_header_compiler=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ echo "$as_me:$LINENO: checking linux/mISDNdsp.h presence" >&5
+echo $ECHO_N "checking linux/mISDNdsp.h presence... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <linux/mISDNdsp.h>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+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_cpp conftest.$ac_ext") 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); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  ac_header_preproc=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+  ac_header_preproc=no
+fi
+
+rm -f conftest.err conftest.$ac_ext
+{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
+echo "${ECHO_T}$ac_header_preproc" >&6; }
+
+# So?  What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
+  yes:no: )
+    { echo "$as_me:$LINENO: WARNING: linux/mISDNdsp.h: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: linux/mISDNdsp.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
+    { echo "$as_me:$LINENO: WARNING: linux/mISDNdsp.h: proceeding with the compiler's result" >&5
+echo "$as_me: WARNING: linux/mISDNdsp.h: proceeding with the compiler's result" >&2;}
+    ac_header_preproc=yes
+    ;;
+  no:yes:* )
+    { echo "$as_me:$LINENO: WARNING: linux/mISDNdsp.h: present but cannot be compiled" >&5
+echo "$as_me: WARNING: linux/mISDNdsp.h: present but cannot be compiled" >&2;}
+    { echo "$as_me:$LINENO: WARNING: linux/mISDNdsp.h:     check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: linux/mISDNdsp.h:     check for missing prerequisite headers?" >&2;}
+    { echo "$as_me:$LINENO: WARNING: linux/mISDNdsp.h: see the Autoconf documentation" >&5
+echo "$as_me: WARNING: linux/mISDNdsp.h: see the Autoconf documentation" >&2;}
+    { echo "$as_me:$LINENO: WARNING: linux/mISDNdsp.h:     section \"Present But Cannot Be Compiled\"" >&5
+echo "$as_me: WARNING: linux/mISDNdsp.h:     section \"Present But Cannot Be Compiled\"" >&2;}
+    { echo "$as_me:$LINENO: WARNING: linux/mISDNdsp.h: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: linux/mISDNdsp.h: proceeding with the preprocessor's result" >&2;}
+    { echo "$as_me:$LINENO: WARNING: linux/mISDNdsp.h: in the future, the compiler will take precedence" >&5
+echo "$as_me: WARNING: linux/mISDNdsp.h: in the future, the compiler will take precedence" >&2;}
+
+    ;;
+esac
+{ echo "$as_me:$LINENO: checking for linux/mISDNdsp.h" >&5
+echo $ECHO_N "checking for linux/mISDNdsp.h... $ECHO_C" >&6; }
+if test "${ac_cv_header_linux_mISDNdsp_h+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_header_linux_mISDNdsp_h=$ac_header_preproc
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_header_linux_mISDNdsp_h" >&5
+echo "${ECHO_T}$ac_cv_header_linux_mISDNdsp_h" >&6; }
+
+fi
+if test $ac_cv_header_linux_mISDNdsp_h = yes; then
+
+cat >>confdefs.h <<_ACEOF
+#define MISDN_1_2 1
+_ACEOF
+
+fi
+
+
 fi
 
 
@@ -34818,13 +34934,13 @@ LN!$LN$ac_delim
 DOT!$DOT$ac_delim
 STRIP!$STRIP$ac_delim
 WGET!$WGET$ac_delim
-RUBBER!$RUBBER$ac_delim
 FETCH!$FETCH$ac_delim
 DOWNLOAD!$DOWNLOAD$ac_delim
 acx_pthread_config!$acx_pthread_config$ac_delim
 PTHREAD_CC!$PTHREAD_CC$ac_delim
 PTHREAD_LIBS!$PTHREAD_LIBS$ac_delim
 PTHREAD_CFLAGS!$PTHREAD_CFLAGS$ac_delim
+AST_DEVMODE!$AST_DEVMODE$ac_delim
 _ACEOF
 
   if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then
@@ -34866,7 +34982,6 @@ _ACEOF
 ac_delim='%!_!# '
 for ac_last_try in false false false false false :; do
   cat >conf$$subs.sed <<_ACEOF
-AST_DEVMODE!$AST_DEVMODE$ac_delim
 ALSA_LIB!$ALSA_LIB$ac_delim
 ALSA_INCLUDE!$ALSA_INCLUDE$ac_delim
 ALSA_DIR!$ALSA_DIR$ac_delim
@@ -34963,6 +35078,7 @@ QT_LIB!$QT_LIB$ac_delim
 QT_INCLUDE!$QT_INCLUDE$ac_delim
 QT_DIR!$QT_DIR$ac_delim
 PBX_QT!$PBX_QT$ac_delim
+RADIUS_LIB!$RADIUS_LIB$ac_delim
 _ACEOF
 
   if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then
@@ -35004,7 +35120,6 @@ _ACEOF
 ac_delim='%!_!# '
 for ac_last_try in false false false false false :; do
   cat >conf$$subs.sed <<_ACEOF
-RADIUS_LIB!$RADIUS_LIB$ac_delim
 RADIUS_INCLUDE!$RADIUS_INCLUDE$ac_delim
 RADIUS_DIR!$RADIUS_DIR$ac_delim
 PBX_RADIUS!$PBX_RADIUS$ac_delim
@@ -35094,7 +35209,7 @@ CURL_CONFIG!$CURL_CONFIG$ac_delim
 LTLIBOBJS!$LTLIBOBJS$ac_delim
 _ACEOF
 
-  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 88; then
+  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 87; then
     break
   elif $ac_last_try; then
     { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
index 5305a8ff8f51e4fa2c81b2de652c9fe86c6f49fb..22f79ce10a599411b1a76544f41a98703b3746f5 100644 (file)
@@ -642,6 +642,7 @@ AST_EXT_LIB_CHECK([MISDN], [mISDN], [mISDN_open], [mISDNuser/mISDNlib.h])
 if test "${PBX_MISDN}" = 1; then
    AST_EXT_LIB_CHECK([ISDNNET], [isdnnet], [init_manager], [mISDNuser/isdn_net.h], [-lmISDN -lpthread])
    AST_EXT_LIB_CHECK([SUPPSERV], [suppserv], [encodeFac], [mISDNuser/suppserv.h])
+   AC_CHECK_HEADER([linux/mISDNdsp.h], [AC_DEFINE_UNQUOTED([MISDN_1_2], 1, [Build chan_misdn for mISDN 1.2 or later.])])
 fi
 
 AST_EXT_LIB_CHECK([NBS], [nbs], [nbs_connect], [nbs.h])
index e8a92a62bc77a2233b67a7d15134044850b25be2..b40d1e4100398a50a8a5fcfc62e3880a629e8559 100644 (file)
    slash. */
 #undef LSTAT_FOLLOWS_SLASHED_SYMLINK
 
+/* Build chan_misdn for mISDN 1.2 or later. */
+#undef MISDN_1_2
+
 /* Define to the address where bug reports for this package should be sent. */
 #undef PACKAGE_BUGREPORT