From: <do...@us...> - 2007-10-29 04:55:20
|
Revision: 1234 http://iaxclient.svn.sourceforge.net/iaxclient/?rev=1234&view=rev Author: dohpaz Date: 2007-10-28 21:55:25 -0700 (Sun, 28 Oct 2007) Log Message: ----------- Add --enable-debug-iax option to enable libiax2 DEBUG_SUPPORT. Make ALL code enabled by DEBUG_SUPPORT in libiax2 pay attention to the current debug setting. Added an iaxclient public API iaxc_debug_iax_set to control the IAX protocol debugging state. Modified Paths: -------------- branches/team/elbunce/iaxclient/configure.ac branches/team/elbunce/iaxclient/lib/Makefile.am branches/team/elbunce/iaxclient/lib/iaxclient.h branches/team/elbunce/iaxclient/lib/iaxclient_lib.c branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c Modified: branches/team/elbunce/iaxclient/configure.ac =================================================================== --- branches/team/elbunce/iaxclient/configure.ac 2007-10-27 06:50:47 UTC (rev 1233) +++ branches/team/elbunce/iaxclient/configure.ac 2007-10-29 04:55:25 UTC (rev 1234) @@ -75,6 +75,12 @@ [Don't use local iax library])],, [enable_local_iax="yes"]) +AC_ARG_ENABLE(debug-iax, + [AS_HELP_STRING([--enable-debug-iax], + [Enable debug support in local iax library])], + enable_debug_iax2=$enableval, + enable_debug_iax2="no") + AC_ARG_ENABLE(speex_preprocess, [AS_HELP_STRING([--disable-speex-preprocess], [Turn off speex preprocessing])],, @@ -358,6 +364,7 @@ AM_CONDITIONAL(USE_CODEC_GSM, test x$has_gsm = xyes && test ! x$with_gsm = xno) AM_CONDITIONAL(USE_LOCAL_GSM, test x$enable_local_gsm = xyes) AM_CONDITIONAL(USE_LOCAL_IAX2, test x$enable_local_iax2 = xyes) +AM_CONDITIONAL(USE_DEBUG_IAX2, test x$enable_debug_iax2 = xyes) AM_CONDITIONAL(USE_LOCAL_ILBC, test x$enable_local_ilbc = xyes) AM_CONDITIONAL(LINUX, test x$OSTYPE = xLINUX) AM_CONDITIONAL(WIN32, test x$OSTYPE = xWIN32) Modified: branches/team/elbunce/iaxclient/lib/Makefile.am =================================================================== --- branches/team/elbunce/iaxclient/lib/Makefile.am 2007-10-27 06:50:47 UTC (rev 1233) +++ branches/team/elbunce/iaxclient/lib/Makefile.am 2007-10-29 04:55:25 UTC (rev 1234) @@ -73,7 +73,9 @@ if USE_LOCAL_IAX2 SRCS += $(SRCS_IAX2) -# AM_CFLAGS += -DDEBUG_SUPPORT +if USE_DEBUG_IAX2 +AM_CFLAGS += -DDEBUG_SUPPORT +endif USE_DEBUG_IAX2 endif USE_LOCAL_IAX2 if USE_LOCAL_ILBC Modified: branches/team/elbunce/iaxclient/lib/iaxclient.h =================================================================== --- branches/team/elbunce/iaxclient/lib/iaxclient.h 2007-10-27 06:50:47 UTC (rev 1233) +++ branches/team/elbunce/iaxclient/lib/iaxclient.h 2007-10-29 04:55:25 UTC (rev 1234) @@ -1334,6 +1334,12 @@ */ EXPORT int iaxc_push_video(void *data, unsigned int size, int fragment); +/*! + Sets the IAX debug set to \a enable. + \param enable If non-zero enable iax protocol debugging +*/ +EXPORT int iaxc_debug_iax_set(int enable); + #ifdef __cplusplus } #endif Modified: branches/team/elbunce/iaxclient/lib/iaxclient_lib.c =================================================================== --- branches/team/elbunce/iaxclient/lib/iaxclient_lib.c 2007-10-27 06:50:47 UTC (rev 1233) +++ branches/team/elbunce/iaxclient/lib/iaxclient_lib.c 2007-10-29 04:55:25 UTC (rev 1234) @@ -1979,3 +1979,13 @@ return 0; } +int iaxc_debug_iax_set(int enable) +{ +#ifdef DEBUG_SUPPORT + if (enable) + iax_enable_debug(); + else + iax_disable_debug(); +#endif +} + Modified: branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c =================================================================== --- branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c 2007-10-27 06:50:47 UTC (rev 1233) +++ branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c 2007-10-29 04:55:25 UTC (rev 1234) @@ -249,22 +249,7 @@ debug = 0; } -void iax_set_private(struct iax_session *s, void *ptr) -{ - s->pvt = ptr; -} -void *iax_get_private(struct iax_session *s) -{ - return s->pvt; -} - -void iax_set_sendto(struct iax_session *s, iax_sendto_t ptr) -{ - s->sendto = ptr; -} - - /* This is a little strange, but to debug you call DEBU(G "Hello World!\n"); */ #if defined(WIN32) || defined(_WIN32_WCE) #define G __FILE__, __LINE__, @@ -274,7 +259,7 @@ #define DEBU __debug #if defined(WIN32) || defined(_WIN32_WCE) -static int __debug(char *file, int lineno, char *fmt, ...) +static int __debug(const char *file, int lineno, const char *fmt, ...) { va_list args; va_start(args, fmt); @@ -286,7 +271,7 @@ return 0; } #else -static int __debug(char *file, int lineno, char *func, char *fmt, ...) +static int __debug(const char *file, int lineno, const char *func, const char *fmt, ...) { va_list args; va_start(args, fmt); @@ -825,13 +810,15 @@ { int res; #ifdef DEBUG_SUPPORT - struct ast_iax2_full_hdr *h = (struct ast_iax2_full_hdr *)(f->data); + if (debug) { + struct ast_iax2_full_hdr *h = (struct ast_iax2_full_hdr *)(f->data); - if (ntohs(h->scallno) & IAX_FLAG_FULL) - iax_showframe(f, NULL, 0, f->transfer ? - &(f->session->transfer) : - &(f->session->peeraddr), - f->datalen - sizeof(struct ast_iax2_full_hdr)); + if (ntohs(h->scallno) & IAX_FLAG_FULL) + iax_showframe(f, NULL, 0, f->transfer ? + &(f->session->transfer) : + &(f->session->peeraddr), + f->datalen - sizeof(struct ast_iax2_full_hdr)); + } #endif /* Send the frame raw */ res = f->session->sendto(netfd, (const char *) f->data, f->datalen, IAX_SOCKOPTS, @@ -2494,7 +2481,8 @@ } #ifdef DEBUG_SUPPORT - iax_showframe(NULL, fh, 1, sin, datalen); + if (debug) + iax_showframe(NULL, fh, 1, sin, datalen); #endif /* Get things going with it, timestamp wise, if we This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <do...@us...> - 2007-10-29 20:26:01
|
Revision: 1235 http://iaxclient.svn.sourceforge.net/iaxclient/?rev=1235&view=rev Author: dohpaz Date: 2007-10-29 13:26:04 -0700 (Mon, 29 Oct 2007) Log Message: ----------- Merge my plug-n-play branch up to trunk as of r1234. Modified Paths: -------------- branches/team/elbunce/iaxclient/configure.ac branches/team/elbunce/iaxclient/contrib/tcl/README.txt branches/team/elbunce/iaxclient/contrib/tcl/configure branches/team/elbunce/iaxclient/contrib/tcl/configure.in branches/team/elbunce/iaxclient/contrib/tcl/iaxclient.c branches/team/elbunce/iaxclient/contrib/win/vs2005/iaxclient.sln branches/team/elbunce/iaxclient/contrib/win/vs2005/libiaxclient.vcproj branches/team/elbunce/iaxclient/lib/Makefile.am branches/team/elbunce/iaxclient/lib/audio_encode.c branches/team/elbunce/iaxclient/lib/audio_encode.h branches/team/elbunce/iaxclient/lib/codec_theora.c branches/team/elbunce/iaxclient/lib/iaxclient.h branches/team/elbunce/iaxclient/lib/iaxclient_lib.c branches/team/elbunce/iaxclient/lib/iaxclient_lib.h branches/team/elbunce/iaxclient/lib/video.c branches/team/elbunce/iaxclient/lib/video.h branches/team/elbunce/iaxclient/simpleclient/stresstest/Makefile.am branches/team/elbunce/iaxclient/simpleclient/vtestcall/vtestcall.c branches/team/elbunce/iaxclient/simpleclient/vtestcall/vtestcall.vcproj Added Paths: ----------- branches/team/elbunce/iaxclient/contrib/tcl/video.c Modified: branches/team/elbunce/iaxclient/configure.ac =================================================================== --- branches/team/elbunce/iaxclient/configure.ac 2007-10-29 04:55:25 UTC (rev 1234) +++ branches/team/elbunce/iaxclient/configure.ac 2007-10-29 20:26:04 UTC (rev 1235) @@ -141,13 +141,17 @@ [Theora support])],, with_theora="auto") +AC_ARG_WITH(vidcap, + [AS_HELP_STRING([--without-vidcap], + [libvidcap support])],, + with_vidcap="auto") + AC_ARG_WITH(ffmpeg, [AS_HELP_STRING([--with-ffmpeg], [FFmpeg support])], FFMPEG="${with_ffmpeg}", with_ffmpeg="no") - if test ! "x$enable_clients" = "xauto"; then for client in ${enable_clients}; do case "$client" in @@ -245,6 +249,22 @@ fi AM_CONDITIONAL(THEORA, test x$has_theora = xyes) +has_vidcap=no +if test ! x$with_vidcap = xno; then + PKG_CHECK_MODULES(VIDCAP, [vidcap >= 0.1],has_vidcap=yes) + if test x$has_vidcap = xyes; then + AC_DEFINE(USE_VIDCAP, 1, [VIDCAP]) + PKG_REQUIRES="$PKG_REQUIRES vidcap" + elif test ! x$with_vidcap = xauto ; then + AC_MSG_ERROR([ + libvidcap is required to build this package! + please see http://libvidcap.sourceforge.net/ for how to + obtain a copy. + ]) + fi +fi +AM_CONDITIONAL(VIDCAP, test x$has_vidcap = xyes) + has_ffmpeg=no if test ! x$with_ffmpeg = xno; then PKG_CHECK_MODULES(FFMPEG, [libavcodec >= 51.40.3],has_ffmpeg=yes) Modified: branches/team/elbunce/iaxclient/contrib/tcl/README.txt =================================================================== --- branches/team/elbunce/iaxclient/contrib/tcl/README.txt 2007-10-29 04:55:25 UTC (rev 1234) +++ branches/team/elbunce/iaxclient/contrib/tcl/README.txt 2007-10-29 20:26:04 UTC (rev 1235) @@ -105,7 +105,23 @@ iaxclient::unregister sessionID + There are some utilities to play ring tones. First you must initialize + and set a ring tone using: + iaxclient::toneinit F1 F2 Duration Length Repeat + where F1 and F2 are the two tone frequencies in Hertz, Duration + in milliseconds of the tone, Length in milliseconds of tone plus + silence, Repeat the number of times to play the tone. + A typical call can be: + iaxclient::toneinit 880 960 16000 48000 10 + + iaxclient::ringstart 0 + start ringing on ring device 0 + + iaxclient::ringstop + stop ringing + + A tone is any single character from the set 123A456B789C*0#D A state is a list with any of: free, active, outgoing, ringing, complete, Modified: branches/team/elbunce/iaxclient/contrib/tcl/configure =================================================================== --- branches/team/elbunce/iaxclient/contrib/tcl/configure 2007-10-29 04:55:25 UTC (rev 1234) +++ branches/team/elbunce/iaxclient/contrib/tcl/configure 2007-10-29 20:26:04 UTC (rev 1235) @@ -1,8 +1,9 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.59 for iaxclient 0.2. +# Generated by GNU Autoconf 2.57 for iaxclient 0.2. # -# Copyright (C) 2003 Free Software Foundation, Inc. +# Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002 +# Free Software Foundation, Inc. # This configure script is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. ## --------------------- ## @@ -19,10 +20,9 @@ elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then set -o posix fi -DUALCASE=1; export DUALCASE # for MKS sh # Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then +if (FOO=FOO; unset FOO) >/dev/null 2>&1; then as_unset=unset else as_unset=false @@ -41,7 +41,7 @@ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ LC_TELEPHONE LC_TIME do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then + if (set +x; test -n "`(eval $as_var=C; export $as_var) 2>&1`"); then eval $as_var=C; export $as_var else $as_unset $as_var @@ -218,17 +218,16 @@ if mkdir -p . 2>/dev/null; then as_mkdir_p=: else - test -d ./-p && rmdir ./-p as_mkdir_p=false fi as_executable_p="test -f" # Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" +as_tr_cpp="sed y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g" # Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" +as_tr_sh="sed y%*+%pp%;s%[^_$as_cr_alnum]%_%g" # IFS @@ -667,7 +666,7 @@ # Be sure to have absolute paths. for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ - localstatedir libdir includedir oldincludedir infodir mandir + localstatedir libdir includedir oldincludedir infodir mandir do eval ac_val=$`echo $ac_var` case $ac_val in @@ -707,10 +706,10 @@ # Try the directory containing this script, then its parent. ac_confdir=`(dirname "$0") 2>/dev/null || $as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$0" : 'X\(//\)[^/]' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || + X"$0" : 'X\(//\)[^/]' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| \ + . : '\(.\)' 2>/dev/null || echo X"$0" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } @@ -802,9 +801,9 @@ cat <<_ACEOF Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] + [$ac_default_prefix] --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [PREFIX] + [PREFIX] By default, \`make install' will install all the files in \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify @@ -903,46 +902,13 @@ ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_builddir$srcdir ;; esac +# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be +# absolute. +ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd` +ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd` +ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd` +ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd` -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - cd $ac_dir # Check for guested configure; otherwise get Cygnus style configure. if test -f $ac_srcdir/configure.gnu; then @@ -952,7 +918,7 @@ echo $SHELL $ac_srcdir/configure --help=recursive elif test -f $ac_srcdir/configure.ac || - test -f $ac_srcdir/configure.in; then + test -f $ac_srcdir/configure.in; then echo $ac_configure --help else @@ -966,9 +932,10 @@ if $ac_init_version; then cat <<\_ACEOF iaxclient configure 0.2 -generated by GNU Autoconf 2.59 +generated by GNU Autoconf 2.57 -Copyright (C) 2003 Free Software Foundation, Inc. +Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002 +Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. _ACEOF @@ -980,7 +947,7 @@ running configure, to aid debugging if configure makes a mistake. It was created by iaxclient $as_me 0.2, which was -generated by GNU Autoconf 2.59. Invocation command line was +generated by GNU Autoconf 2.57. Invocation command line was $ $0 $@ @@ -1057,19 +1024,19 @@ 2) ac_configure_args1="$ac_configure_args1 '$ac_arg'" if test $ac_must_keep_next = true; then - ac_must_keep_next=false # Got value, back to normal. + ac_must_keep_next=false # Got value, back to normal. else - case $ac_arg in - *=* | --config-cache | -C | -disable-* | --disable-* \ - | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ - | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ - | -with-* | --with-* | -without-* | --without-* | --x) - case "$ac_configure_args0 " in - "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; - esac - ;; - -* ) ac_must_keep_next=true ;; - esac + case $ac_arg in + *=* | --config-cache | -C | -disable-* | --disable-* \ + | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ + | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ + | -with-* | --with-* | -without-* | --without-* | --x) + case "$ac_configure_args0 " in + "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; + esac + ;; + -* ) ac_must_keep_next=true ;; + esac fi ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" # Get rid of the leading space. @@ -1103,12 +1070,12 @@ case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in *ac_space=\ *) sed -n \ - "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" + "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" ;; *) sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" + "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" ;; esac; } @@ -1137,7 +1104,7 @@ for ac_var in $ac_subst_files do eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" + echo "$ac_var='"'"'$ac_val'"'"'" done | sort echo fi @@ -1156,7 +1123,7 @@ echo "$as_me: caught signal $ac_signal" echo "$as_me: exit $exit_status" } >&5 - rm -f core *.core && + rm -f core core.* *.core && rm -rf conftest* confdefs* conf$$* $ac_clean_files && exit $exit_status ' 0 @@ -1236,7 +1203,7 @@ # value. ac_cache_corrupted=false for ac_var in `(set) 2>&1 | - sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do + sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do eval ac_old_set=\$ac_cv_env_${ac_var}_set eval ac_new_set=\$ac_env_${ac_var}_set eval ac_old_val="\$ac_cv_env_${ac_var}_value" @@ -1253,13 +1220,13 @@ ,);; *) if test "x$ac_old_val" != "x$ac_new_val"; then - { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 + { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} - { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 + { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 echo "$as_me: former value: $ac_old_val" >&2;} - { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 + { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 echo "$as_me: current value: $ac_new_val" >&2;} - ac_cache_corrupted=: + ac_cache_corrupted=: fi;; esac # Pass precious variables to config.status. @@ -2060,6 +2027,7 @@ (exit $ac_status); } cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -2079,8 +2047,8 @@ # Try to create an executable without -o first, disregard a.out. # It will help us diagnose broken compilers, and finding out an intuition # of exeext. -echo "$as_me:$LINENO: checking for C compiler default output file name" >&5 -echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6 +echo "$as_me:$LINENO: checking for C compiler default output" >&5 +echo $ECHO_N "checking for C compiler default output... $ECHO_C" >&6 ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5 (eval $ac_link_default) 2>&5 @@ -2100,23 +2068,23 @@ test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) - ;; + ;; conftest.$ac_ext ) - # This is the source file. - ;; + # This is the source file. + ;; [ab].out ) - # We found the default executable, but exeext='' is most - # certainly right. - break;; + # We found the default executable, but exeext='' is most + # certainly right. + break;; *.* ) - ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - # FIXME: I believe we export ac_cv_exeext for Libtool, - # but it would be cool to find out if it's true. Does anybody - # maintain Libtool? --akim. - export ac_cv_exeext - break;; + ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` + # FIXME: I believe we export ac_cv_exeext for Libtool, + # but it would be cool to find out if it's true. Does anybody + # maintain Libtool? --akim. + export ac_cv_exeext + break;; * ) - break;; + break;; esac done else @@ -2190,8 +2158,8 @@ case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;; *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - export ac_cv_exeext - break;; + export ac_cv_exeext + break;; * ) break;; esac done @@ -2216,6 +2184,7 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -2266,6 +2235,7 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -2285,25 +2255,15 @@ _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 + (eval $ac_compile) 2>&5 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' + { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&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' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_compiler_gnu=yes else @@ -2312,7 +2272,7 @@ ac_compiler_gnu=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi @@ -2328,6 +2288,7 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -2344,25 +2305,15 @@ _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 + (eval $ac_compile) 2>&5 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' + { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&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' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_prog_cc_g=yes else @@ -2371,7 +2322,7 @@ ac_cv_prog_cc_g=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 echo "${ECHO_T}$ac_cv_prog_cc_g" >&6 @@ -2398,6 +2349,7 @@ ac_cv_prog_cc_stdc=no ac_save_CC=$CC cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -2425,16 +2377,6 @@ va_end (v); return s; } - -/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has - function prototypes and stuff, but not '\xHH' hex character constants. - These don't provoke an error unfortunately, instead are silently treated - as 'x'. The following induces an error, until -std1 is added to get - proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an - array size at least. It's necessary to write '\x00'==0 to get something - that's true only with -std1. */ -int osf4_cc_array ['\x00' == 0 ? 1 : -1]; - int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; @@ -2461,25 +2403,15 @@ CC="$ac_save_CC $ac_arg" rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 + (eval $ac_compile) 2>&5 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' + { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&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' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_prog_cc_stdc=$ac_arg break @@ -2488,7 +2420,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f conftest.err conftest.$ac_objext +rm -f conftest.$ac_objext done rm -f conftest.$ac_ext conftest.$ac_objext CC=$ac_save_CC @@ -2516,28 +2448,19 @@ _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 + (eval $ac_compile) 2>&5 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' + { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&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' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then for ac_declaration in \ - '' \ + ''\ + '#include <stdlib.h>' \ 'extern "C" void std::exit (int) throw (); using std::exit;' \ 'extern "C" void std::exit (int); using std::exit;' \ 'extern "C" void exit (int) throw ();' \ @@ -2545,13 +2468,14 @@ 'void exit (int);' do cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -$ac_declaration #include <stdlib.h> +$ac_declaration int main () { @@ -2562,25 +2486,15 @@ _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 + (eval $ac_compile) 2>&5 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' + { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&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' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then : else @@ -2589,8 +2503,9 @@ continue fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f conftest.$ac_objext conftest.$ac_ext cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -2607,25 +2522,15 @@ _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 + (eval $ac_compile) 2>&5 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' + { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&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' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then break else @@ -2633,7 +2538,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f conftest.$ac_objext conftest.$ac_ext done rm -f conftest* if test -n "$ac_declaration"; then @@ -2647,7 +2552,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f conftest.$ac_objext conftest.$ac_ext ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -2682,6 +2587,7 @@ # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -2692,7 +2598,7 @@ #else # include <assert.h> #endif - Syntax error + Syntax error _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 @@ -2704,7 +2610,6 @@ (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 @@ -2725,6 +2630,7 @@ # OK, works on sane cases. Now check whether non-existent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -2742,7 +2648,6 @@ (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 @@ -2789,6 +2694,7 @@ # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -2799,7 +2705,7 @@ #else # include <assert.h> #endif - Syntax error + Syntax error _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 @@ -2811,7 +2717,6 @@ (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 @@ -2832,6 +2737,7 @@ # OK, works on sane cases. Now check whether non-existent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -2849,7 +2755,6 @@ (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 @@ -2900,7 +2805,6 @@ # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag # AFS /usr/afsws/bin/install, which mishandles nonexistent args # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" -# OS/2's system install, which has a completely different semantic # ./install, which can be erroneously created by make from ./install.sh. echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6 @@ -2917,7 +2821,6 @@ case $as_dir/ in ./ | .// | /cC/* | \ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ - ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \ /usr/ucb/* ) ;; *) # OSF1 and SCO ODT 3.0 have their own names for install. @@ -2925,20 +2828,20 @@ # by default. for ac_prog in ginstall scoinst install; do for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then - if test $ac_prog = install && - grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - elif test $ac_prog = install && - grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # program-specific install script used by HP pwplus--don't use. - : - else - ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" - break 3 - fi - fi + if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then + if test $ac_prog = install && + grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # AIX install. It has an incompatible calling convention. + : + elif test $ac_prog = install && + grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # program-specific install script used by HP pwplus--don't use. + : + else + ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" + break 3 + fi + fi done done ;; @@ -2975,7 +2878,7 @@ echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6 -set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'` +set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,./+-,__p_,'` if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -3118,6 +3021,7 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -3138,25 +3042,15 @@ _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 + (eval $ac_compile) 2>&5 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' + { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&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' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_header_stdc=yes else @@ -3165,11 +3059,12 @@ ac_cv_header_stdc=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -3191,6 +3086,7 @@ if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -3215,6 +3111,7 @@ : else cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -3226,9 +3123,9 @@ # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) #else # define ISLOWER(c) \ - (('a' <= (c) && (c) <= 'i') \ - || ('j' <= (c) && (c) <= 'r') \ - || ('s' <= (c) && (c) <= 'z')) + (('a' <= (c) && (c) <= 'i') \ + || ('j' <= (c) && (c) <= 'r') \ + || ('s' <= (c) && (c) <= 'z')) # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) #endif @@ -3239,7 +3136,7 @@ int i; for (i = 0; i < 256; i++) if (XOR (islower (i), ISLOWER (i)) - || toupper (i) != TOUPPER (i)) + || toupper (i) != TOUPPER (i)) exit(2); exit (0); } @@ -3264,7 +3161,7 @@ ( exit $ac_status ) ac_cv_header_stdc=no fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +rm -f core core.* *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi fi fi @@ -3289,7 +3186,7 @@ for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ - inttypes.h stdint.h unistd.h + inttypes.h stdint.h unistd.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_header" >&5 @@ -3298,6 +3195,7 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -3309,25 +3207,15 @@ _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 + (eval $ac_compile) 2>&5 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' + { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&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' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_Header=yes" else @@ -3336,7 +3224,7 @@ eval "$as_ac_Header=no" fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 @@ -3365,6 +3253,7 @@ OLDCC="$CC" CC="$CC -pipe" cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -3381,25 +3270,15 @@ _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 + (eval $ac_compile) 2>&5 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' + { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&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' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 @@ -3411,7 +3290,7 @@ echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f conftest.$ac_objext conftest.$ac_ext fi #-------------------------------------------------------------------- @@ -3425,6 +3304,7 @@ else # See if sys/param.h defines the BYTE_ORDER macro. cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -3446,28 +3326,19 @@ _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 + (eval $ac_compile) 2>&5 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' + { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&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' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then # It does; now see whether it defined to BIG_ENDIAN or not. cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -3489,25 +3360,15 @@ _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 + (eval $ac_compile) 2>&5 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' + { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&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' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_c_bigendian=yes else @@ -3516,7 +3377,7 @@ ac_cv_c_bigendian=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f conftest.$ac_objext conftest.$ac_ext else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -3526,6 +3387,7 @@ # try to guess the endianness by grepping values into an object file ac_cv_c_bigendian=unknown cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -3547,25 +3409,15 @@ _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 + (eval $ac_compile) 2>&5 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' + { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&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' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then if grep BIGenDianSyS conftest.$ac_objext >/dev/null ; then ac_cv_c_bigendian=yes @@ -3583,9 +3435,10 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f conftest.$ac_objext conftest.$ac_ext else cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -3624,10 +3477,10 @@ ( exit $ac_status ) ac_cv_c_bigendian=yes fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +rm -f core core.* *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_c_bigendian" >&5 echo "${ECHO_T}$ac_cv_c_bigendian" >&6 @@ -3663,28 +3516,21 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Define sin to an innocuous variant, in case <limits.h> declares sin. - For example, HP-UX 11i <limits.h> declares gettimeofday. */ -#define sin innocuous_sin - /* System header to define __stub macros and hopefully few prototypes, which can conflict with char sin (); below. Prefer <limits.h> to <assert.h> if __STDC__ is defined, since <limits.h> exists even on freestanding compilers. */ - #ifdef __STDC__ # include <limits.h> #else # include <assert.h> #endif - -#undef sin - /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" @@ -3715,25 +3561,15 @@ _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 + (eval $ac_link) 2>&5 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' + { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_func_sin=yes else @@ -3742,8 +3578,7 @@ ac_cv_func_sin=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_func_sin" >&5 echo "${ECHO_T}$ac_cv_func_sin" >&6 @@ -3761,6 +3596,7 @@ ac_check_lib_save_LIBS=$LIBS LIBS="-lieee $LIBS" cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -3778,25 +3614,15 @@ _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 + (eval $ac_link) 2>&5 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' + { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_ieee_main=yes else @@ -3805,8 +3631,7 @@ ac_cv_lib_ieee_main=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_ieee_main" >&5 @@ -3829,6 +3654,7 @@ ac_check_lib_save_LIBS=$LIBS LIBS="-linet $LIBS" cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -3846,25 +3672,15 @@ _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 + (eval $ac_link) 2>&5 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' + { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_inet_main=yes else @@ -3873,8 +3689,7 @@ ac_cv_lib_inet_main=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_inet_main" >&5 @@ -3896,6 +3711,7 @@ echo "$as_me:$LINENO: checking net/errno.h usability" >&5 echo $ECHO_N "checking net/errno.h usability... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -3906,25 +3722,15 @@ _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 + (eval $ac_compile) 2>&5 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' + { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&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' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_header_compiler=yes else @@ -3933,7 +3739,7 @@ ac_header_compiler=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +rm -f conftest.$ac_objext conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 echo "${ECHO_T}$ac_header_compiler" >&6 @@ -3941,6 +3747,7 @@ echo "$as_me:$LINENO: checking net/errno.h presence" >&5 echo $ECHO_N "checking net/errno.h presence... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -3958,7 +3765,6 @@ (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 @@ -3978,31 +3784,32 @@ 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: ) +case $ac_header_compiler:$ac_header_preproc in + yes:no ) { echo "$as_me:$LINENO: WARNING: net/errno.h: accepted by the compiler, rejected by the preprocessor!" >&5 echo "$as_me: WARNING: net/errno.h: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: net/errno.h: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: net/errno.h: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes + { echo "$as_me:$LINENO: WARNING: net/errno.h: proceeding with the preprocessor's result" >&5 +echo "$as_me: WARNING: net/errno.h: proceeding with the preprocessor's result" >&2;} + ( + cat <<\_ASBOX +## ------------------------------------ ## +## Report this to bug...@gn.... ## +## ------------------------------------ ## +_ASBOX + ) | + sed "s/^/$as_me: WARNING: /" >&2 ;; - no:yes:* ) + no:yes ) { echo "$as_me:$LINENO: WARNING: net/errno.h: present but cannot be compiled" >&5 echo "$as_me: WARNING: net/errno.h: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: net/errno.h: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: net/errno.h: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: net/errno.h: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: net/errno.h: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: net/errno.h: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: net/errno.h: section \"Present But Cannot Be Compiled\"" >&2;} + { echo "$as_me:$LINENO: WARNING: net/errno.h: check for missing prerequisite headers?" >&5 +echo "$as_me: WARNING: net/errno.h: check for missing prerequisite headers?" >&2;} { echo "$as_me:$LINENO: WARNING: net/errno.h: proceeding with the preprocessor's result" >&5 echo "$as_me: WARNING: net/errno.h: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: net/errno.h: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: net/errno.h: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ------------------------------------ ## -## Report this to the iaxclient lists. ## +## Report this to bug...@gn.... ## ## ------------------------------------ ## _ASBOX ) | @@ -4056,28 +3863,21 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Define connect to an innocuous variant, in case <limits.h> declares connect. - For example, HP-UX 11i <limits.h> declares gettimeofday. */ -#define connect innocuous_connect - /* System header to define __stub macros and hopefully few prototypes, which can conflict with char connect (); below. Prefer <limits.h> to <assert.h> if __STDC__ is defined, since <limits.h> exists even on freestanding compilers. */ - #ifdef __STDC__ # include <limits.h> #else # include <assert.h> #endif - -#undef connect - /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" @@ -4108,25 +3908,15 @@ _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 + (eval $ac_link) 2>&5 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' + { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_func_connect=yes else @@ -4135,8 +3925,7 @@ ac_cv_func_connect=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_func_connect" >&5 echo "${ECHO_T}$ac_cv_func_connect" >&6 @@ -4153,28 +3942,21 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Define setsockopt to an innocuous variant, in case <limits.h> declares setsockopt. - For example, HP-UX 11i <limits.h> declares gettimeofday. */ -#define setsockopt innocuous_setsockopt - /* System header to define __stub macros and hopefully few prototypes, which can conflict with char setsockopt (); below. Prefer <limits.h> to <assert.h> if __STDC__ is defined, since <limits.h> exists even on freestanding compilers. */ - #ifdef __STDC__ # include <limits.h> #else # include <assert.h> #endif - -#undef setsockopt - /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" @@ -4205,25 +3987,15 @@ _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 + (eval $ac_link) 2>&5 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' + { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_func_setsockopt=yes else @@ -4232,8 +4004,7 @@ ac_cv_func_setsockopt=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_func_setsockopt" >&5 echo "${ECHO_T}$ac_cv_func_setsockopt" >&6 @@ -4248,6 +4019,7 @@ ac_check_lib_save_LIBS=$LIBS LIBS="-lsocket $LIBS" cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -4271,25 +4043,15 @@ _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 + (eval $ac_link) 2>&5 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' + { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_socket_setsockopt=yes else @@ -4298,8 +4060,7 @@ ac_cv_lib_socket_setsockopt=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_socket_setsockopt" >&5 @@ -4322,28 +4083,21 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Define accept to an innocuous variant, in case <limits.h> declares accept. - For example, HP-UX 11i <limits.h> declares gettimeofday. */ -#define accept innocuous_accept - /* System header to define __stub macros and hopefully few prototypes, which can conflict with char accept (); below. Prefer <limits.h> to <assert.h> if __STDC__ is defined, since <limits.h> exists even on freestanding compilers. */ - #ifdef __STDC__ # include <limits.h> #else # include <assert.h> #endif - -#undef accept - /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" @@ -4374,25 +4128,15 @@ _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 + (eval $ac_link) 2>&5 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' + { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_func_accept=yes else @@ -4401,8 +4145,7 @@ ac_cv_func_accept=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_func_accept" >&5 echo "${ECHO_T}$ac_cv_func_accept" >&6 @@ -4419,28 +4162,21 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Define gethostbyname to an innocuous variant, in case <limits.h> declares gethostbyname. - For example, HP-UX 11i <limits.h> declares gettimeofday. */ -#define gethostbyname innocuous_gethostbyname - /* System header to define __stub macros and hopefully few prototypes, which can conflict with char gethostbyname (); below. Prefer <limits.h> to <assert.h> if __STDC__ is defined, since <limits.h> exists even on freestanding compilers. */ - #ifdef __STDC__ # include <limits.h> #else # include <assert.h> #endif - -#undef gethostbyname - /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" @@ -4471,25 +4207,15 @@ _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 + (eval $ac_link) 2>&5 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' + { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_func_gethostbyname=yes else @@ -4498,8 +4224,7 @@ ac_cv_func_gethostbyname=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_func_gethostbyname" >&5 echo "${ECHO_T}$ac_cv_func_gethostbyname" >&6 @@ -4514,6 +4239,7 @@ ac_check_lib_save_LIBS=$LIBS LIBS="-lnsl $LIBS" cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -4537,25 +4263,15 @@ _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 + (eval $ac_link) 2>&5 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' + { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_nsl_gethostbyname=yes else @@ -4564,8 +4280,7 @@ ac_cv_lib_nsl_gethostbyname=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext +rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_nsl_gethostbyname" >&5 @@ -4591,6 +4306,7 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -4626,25 +4342,15 @@ _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 + (eval $ac_link) 2>&5 ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_st... [truncated message content] |
From: <do...@us...> - 2007-11-01 17:37:46
|
Revision: 1255 http://iaxclient.svn.sourceforge.net/iaxclient/?rev=1255&view=rev Author: dohpaz Date: 2007-11-01 10:37:41 -0700 (Thu, 01 Nov 2007) Log Message: ----------- Merge up to trunk of r1254. Modified Paths: -------------- branches/team/elbunce/iaxclient/README.VisualStudio branches/team/elbunce/iaxclient/contrib/tcl/iaxclient.c branches/team/elbunce/iaxclient/contrib/win/vs2005/iaxclient.sln branches/team/elbunce/iaxclient/lib/audio_portaudio.c branches/team/elbunce/iaxclient/lib/codec_theora.c branches/team/elbunce/iaxclient/lib/codec_ulaw.c branches/team/elbunce/iaxclient/lib/iaxclient.h branches/team/elbunce/iaxclient/lib/iaxclient_lib.c branches/team/elbunce/iaxclient/lib/portmixer/px_win_wmme/px_win_wmme.c branches/team/elbunce/iaxclient/lib/slice.c branches/team/elbunce/iaxclient/lib/slice.h branches/team/elbunce/iaxclient/lib/video.c branches/team/elbunce/iaxclient/simpleclient/stresstest/stresstest.c branches/team/elbunce/iaxclient/simpleclient/vtestcall/vtestcall.c Added Paths: ----------- branches/team/elbunce/iaxclient/contrib/win/vs2005/libvidcap.vcproj Modified: branches/team/elbunce/iaxclient/README.VisualStudio =================================================================== --- branches/team/elbunce/iaxclient/README.VisualStudio 2007-11-01 15:23:44 UTC (rev 1254) +++ branches/team/elbunce/iaxclient/README.VisualStudio 2007-11-01 17:37:41 UTC (rev 1255) @@ -28,18 +28,19 @@ http://www.microsoft.com/downloads/details.aspx?FamilyID=c2b1e300-f358-4523-b479-f53d234cdccf 2) Obtain dependencies. At the time of this writing, portaudio-v19, - libogg 1.1.3, speex 1.2beta1, and libtheora 1.0alpha7 are required. + libogg 1.1.3, speex 1.2beta1, libtheora 1.0alpha7, and libvidcap are required. Source for these dependencies are available here: http://portaudio.com/archives/pa_snapshot_v19.tar.gz http://downloads.xiph.org/releases/ogg/libogg-1.1.3.tar.gz http://downloads.xiph.org/releases/speex/speex-1.2beta1.tar.gz http://downloads.xiph.org/releases/theora/libtheora-1.0alpha7.tar.gz + http://downloads.sourceforge.net/libvidcap/libvidcap-0.1.tar.gz In order to build with the vcproj files provided by iaxclient, these dependent libraries must be moved to be peer directories to the iaxclient source directory. They also must have the following - names: libogg, speex, and libtheora. So the final directory + names: libogg, speex, libtheora and libvidcap. So the final directory layout would be as follows: C:\...\whereever\iaxclient @@ -47,6 +48,7 @@ C:\...\whereever\libogg C:\...\whereever\speex C:\...\whereever\libtheora + C:\...\whereever\libvidcap 2) Open the solution file: contrib/win/vs2005/iaxclient.sln Modified: branches/team/elbunce/iaxclient/contrib/tcl/iaxclient.c =================================================================== --- branches/team/elbunce/iaxclient/contrib/tcl/iaxclient.c 2007-11-01 15:23:44 UTC (rev 1254) +++ branches/team/elbunce/iaxclient/contrib/tcl/iaxclient.c 2007-11-01 17:37:41 UTC (rev 1255) @@ -600,7 +600,9 @@ } if (objc == 2) { - line = iaxc_selected_call(); + // Problems reported coming from this line. + // If including it again you must be very sure of exactly what you do! + //line = iaxc_selected_call(); } if (objc == 3) { @@ -614,7 +616,9 @@ if (result == TCL_OK) { iaxc_call(num); - iaxc_select_call(line); + // Problems reported coming from this line. + // If including it again you must be very sure of exactly what you do! + //iaxc_select_call(line); } return result; } Modified: branches/team/elbunce/iaxclient/contrib/win/vs2005/iaxclient.sln =================================================================== --- branches/team/elbunce/iaxclient/contrib/win/vs2005/iaxclient.sln 2007-11-01 15:23:44 UTC (rev 1254) +++ branches/team/elbunce/iaxclient/contrib/win/vs2005/iaxclient.sln 2007-11-01 17:37:41 UTC (rev 1255) @@ -7,14 +7,14 @@ EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libiaxclient", "libiaxclient.vcproj", "{9A9C003E-EAF6-4D0E-896F-E3994503C7E4}" ProjectSection(ProjectDependencies) = postProject + {82C9BD79-9796-405F-8A28-3F538514AC3A} = {82C9BD79-9796-405F-8A28-3F538514AC3A} + {3A76129B-55AB-4D54-BAA7-08F63ED52569} = {3A76129B-55AB-4D54-BAA7-08F63ED52569} + {5CC054B7-6DAA-46BF-9A08-3B33B83E8D3E} = {5CC054B7-6DAA-46BF-9A08-3B33B83E8D3E} + {2F463562-375D-481E-A6E0-7C7D0DC1ED7A} = {2F463562-375D-481E-A6E0-7C7D0DC1ED7A} + {E972C52F-9E85-4D65-B19C-031E511E9DB4} = {E972C52F-9E85-4D65-B19C-031E511E9DB4} + {E2C6AD95-7A61-41FE-8754-A4623C891BF8} = {E2C6AD95-7A61-41FE-8754-A4623C891BF8} + {F5166D99-32BB-40D5-BE95-6F97F72C44CE} = {F5166D99-32BB-40D5-BE95-6F97F72C44CE} {3B023516-2C69-4CCB-9302-239991B6EC2C} = {3B023516-2C69-4CCB-9302-239991B6EC2C} - {F5166D99-32BB-40D5-BE95-6F97F72C44CE} = {F5166D99-32BB-40D5-BE95-6F97F72C44CE} - {E2C6AD95-7A61-41FE-8754-A4623C891BF8} = {E2C6AD95-7A61-41FE-8754-A4623C891BF8} - {E972C52F-9E85-4D65-B19C-031E511E9DB4} = {E972C52F-9E85-4D65-B19C-031E511E9DB4} - {2F463562-375D-481E-A6E0-7C7D0DC1ED7A} = {2F463562-375D-481E-A6E0-7C7D0DC1ED7A} - {5CC054B7-6DAA-46BF-9A08-3B33B83E8D3E} = {5CC054B7-6DAA-46BF-9A08-3B33B83E8D3E} - {3A76129B-55AB-4D54-BAA7-08F63ED52569} = {3A76129B-55AB-4D54-BAA7-08F63ED52569} - {82C9BD79-9796-405F-8A28-3F538514AC3A} = {82C9BD79-9796-405F-8A28-3F538514AC3A} EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libiax2", "libiax2.vcproj", "{5CC054B7-6DAA-46BF-9A08-3B33B83E8D3E}" @@ -34,6 +34,11 @@ EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libvidcap", "..\..\..\..\libvidcap\contrib\win\vs2005\libvidcap.vcproj", "{F5166D99-32BB-40D5-BE95-6F97F72C44CE}" EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "vtestcall", "..\..\..\simpleclient\vtestcall\vtestcall.vcproj", "{B5F8E725-85A8-4CB1-8824-B82127BB2B1E}" + ProjectSection(ProjectDependencies) = postProject + {9A9C003E-EAF6-4D0E-896F-E3994503C7E4} = {9A9C003E-EAF6-4D0E-896F-E3994503C7E4} + EndProjectSection +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug_dll|Win32 = Debug_dll|Win32 @@ -122,6 +127,14 @@ {F5166D99-32BB-40D5-BE95-6F97F72C44CE}.Release_dll|Win32.Build.0 = Release|Win32 {F5166D99-32BB-40D5-BE95-6F97F72C44CE}.Release|Win32.ActiveCfg = Release|Win32 {F5166D99-32BB-40D5-BE95-6F97F72C44CE}.Release|Win32.Build.0 = Release|Win32 + {B5F8E725-85A8-4CB1-8824-B82127BB2B1E}.Debug_dll|Win32.ActiveCfg = Debug|Win32 + {B5F8E725-85A8-4CB1-8824-B82127BB2B1E}.Debug_dll|Win32.Build.0 = Debug|Win32 + {B5F8E725-85A8-4CB1-8824-B82127BB2B1E}.Debug|Win32.ActiveCfg = Debug|Win32 + {B5F8E725-85A8-4CB1-8824-B82127BB2B1E}.Debug|Win32.Build.0 = Debug|Win32 + {B5F8E725-85A8-4CB1-8824-B82127BB2B1E}.Release_dll|Win32.ActiveCfg = Release|Win32 + {B5F8E725-85A8-4CB1-8824-B82127BB2B1E}.Release_dll|Win32.Build.0 = Release|Win32 + {B5F8E725-85A8-4CB1-8824-B82127BB2B1E}.Release|Win32.ActiveCfg = Release|Win32 + {B5F8E725-85A8-4CB1-8824-B82127BB2B1E}.Release|Win32.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE Copied: branches/team/elbunce/iaxclient/contrib/win/vs2005/libvidcap.vcproj (from rev 1252, trunk/contrib/win/vs2005/libvidcap.vcproj) =================================================================== --- branches/team/elbunce/iaxclient/contrib/win/vs2005/libvidcap.vcproj (rev 0) +++ branches/team/elbunce/iaxclient/contrib/win/vs2005/libvidcap.vcproj 2007-11-01 17:37:41 UTC (rev 1255) @@ -0,0 +1,361 @@ +<?xml version="1.0" encoding="Windows-1252"?> +<VisualStudioProject + ProjectType="Visual C++" + Version="8.00" + Name="libvidcap" + ProjectGUID="{F5166D99-32BB-40D5-BE95-6F97F72C44CE}" + RootNamespace="libvidcap" + Keyword="Win32Proj" + > + <Platforms> + <Platform + Name="Win32" + /> + </Platforms> + <ToolFiles> + </ToolFiles> + <Configurations> + <Configuration + Name="Debug|Win32" + OutputDirectory="$(SolutionDir)\$(ConfigurationName)\$(ProjectName)" + IntermediateDirectory="$(OutDir)" + ConfigurationType="4" + CharacterSet="1" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCustomBuildTool" + /> + <Tool + Name="VCXMLDataGeneratorTool" + /> + <Tool + Name="VCWebServiceProxyGeneratorTool" + /> + <Tool + Name="VCMIDLTool" + /> + <Tool + Name="VCCLCompilerTool" + Optimization="0" + AdditionalIncludeDirectories="..\..\..\..\libvidcap\src;..\..\..\..\libvidcap\src\directshow;..\..\..\..\libvidcap\include;"$(DXSDK_DIR)\Include"" + PreprocessorDefinitions="WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;HAVE_DIRECTSHOW;HAVE_SLEEP" + MinimalRebuild="true" + BasicRuntimeChecks="3" + RuntimeLibrary="3" + UsePrecompiledHeader="0" + WarningLevel="3" + Detect64BitPortabilityProblems="true" + DebugInformationFormat="4" + CompileAs="1" + /> + <Tool + Name="VCManagedResourceCompilerTool" + /> + <Tool + Name="VCResourceCompilerTool" + /> + <Tool + Name="VCPreLinkEventTool" + /> + <Tool + Name="VCLibrarianTool" + /> + <Tool + Name="VCALinkTool" + /> + <Tool + Name="VCXDCMakeTool" + /> + <Tool + Name="VCBscMakeTool" + /> + <Tool + Name="VCFxCopTool" + /> + <Tool + Name="VCPostBuildEventTool" + /> + </Configuration> + <Configuration + Name="Release|Win32" + OutputDirectory="$(SolutionDir)\$(ConfigurationName)\$(ProjectName)" + IntermediateDirectory="$(OutDir)" + ConfigurationType="4" + CharacterSet="1" + WholeProgramOptimization="1" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCustomBuildTool" + /> + <Tool + Name="VCXMLDataGeneratorTool" + /> + <Tool + Name="VCWebServiceProxyGeneratorTool" + /> + <Tool + Name="VCMIDLTool" + /> + <Tool + Name="VCCLCompilerTool" + AdditionalIncludeDirectories="..\..\..\..\libvidcap\src;..\..\..\..\libvidcap\src\directshow;..\..\..\..\libvidcap\include;"$(DXSDK_DIR)\Include"" + PreprocessorDefinitions="WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;HAVE_DIRECTSHOW;HAVE_SLEEP" + RuntimeLibrary="2" + UsePrecompiledHeader="0" + WarningLevel="3" + Detect64BitPortabilityProblems="true" + DebugInformationFormat="3" + CompileAs="1" + /> + <Tool + Name="VCManagedResourceCompilerTool" + /> + <Tool + Name="VCResourceCompilerTool" + /> + <Tool + Name="VCPreLinkEventTool" + /> + <Tool + Name="VCLibrarianTool" + /> + <Tool + Name="VCALinkTool" + /> + <Tool + Name="VCXDCMakeTool" + /> + <Tool + Name="VCBscMakeTool" + /> + <Tool + Name="VCFxCopTool" + /> + <Tool + Name="VCPostBuildEventTool" + /> + </Configuration> + </Configurations> + <References> + </References> + <Files> + <Filter + Name="Source Files" + Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx" + UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}" + > + <File + RelativePath="..\..\..\..\libvidcap\src\conv.c" + > + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\conv_to_i420.c" + > + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\conv_to_rgb.c" + > + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\conv_to_yuy2.c" + > + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\directshow\DevMonitor.cpp" + > + <FileConfiguration + Name="Debug|Win32" + > + <Tool + Name="VCCLCompilerTool" + CompileAs="2" + /> + </FileConfiguration> + <FileConfiguration + Name="Release|Win32" + > + <Tool + Name="VCCLCompilerTool" + CompileAs="2" + /> + </FileConfiguration> + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\directshow\DirectShowSource.cpp" + > + <FileConfiguration + Name="Debug|Win32" + > + <Tool + Name="VCCLCompilerTool" + CompileAs="2" + /> + </FileConfiguration> + <FileConfiguration + Name="Release|Win32" + > + <Tool + Name="VCCLCompilerTool" + CompileAs="2" + /> + </FileConfiguration> + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\directshow\DShowSrcManager.cpp" + > + <FileConfiguration + Name="Debug|Win32" + > + <Tool + Name="VCCLCompilerTool" + CompileAs="2" + /> + </FileConfiguration> + <FileConfiguration + Name="Release|Win32" + > + <Tool + Name="VCCLCompilerTool" + CompileAs="2" + /> + </FileConfiguration> + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\directshow\GraphMonitor.cpp" + > + <FileConfiguration + Name="Debug|Win32" + > + <Tool + Name="VCCLCompilerTool" + CompileAs="2" + /> + </FileConfiguration> + <FileConfiguration + Name="Release|Win32" + > + <Tool + Name="VCCLCompilerTool" + CompileAs="2" + /> + </FileConfiguration> + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\hotlist.c" + > + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\logging.c" + > + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\sapi.c" + > + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\sapi_dshow.cpp" + > + <FileConfiguration + Name="Debug|Win32" + > + <Tool + Name="VCCLCompilerTool" + CompileAs="2" + /> + </FileConfiguration> + <FileConfiguration + Name="Release|Win32" + > + <Tool + Name="VCCLCompilerTool" + CompileAs="2" + /> + </FileConfiguration> + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\sliding_window.c" + > + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\vidcap.c" + > + </File> + </Filter> + <Filter + Name="Header Files" + Filter="h;hpp;hxx;hm;inl;inc;xsd" + UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}" + > + <File + RelativePath="..\..\..\..\libvidcap\src\conv.h" + > + </File> + <File + RelativePath="..\..\..\..\libvidcap\include\vidcap\converters.h" + > + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\directshow\DevMonitor.h" + > + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\directshow\DirectShowSource.h" + > + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\directshow\DShowSrcManager.h" + > + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\directshow\GraphMonitor.h" + > + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\hotlist.h" + > + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\directshow\LocklessQueue.h" + > + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\logging.h" + > + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\logging.h" + > + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\sapi.h" + > + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\sapi_context.h" + > + </File> + <File + RelativePath="..\..\..\..\libvidcap\src\sliding_window.h" + > + </File> + <File + RelativePath="..\..\..\..\libvidcap\include\vidcap\vidcap.h" + > + </File> + </Filter> + <Filter + Name="Resource Files" + Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav" + UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}" + > + </Filter> + </Files> + <Globals> + </Globals> +</VisualStudioProject> Modified: branches/team/elbunce/iaxclient/lib/audio_portaudio.c =================================================================== --- branches/team/elbunce/iaxclient/lib/audio_portaudio.c 2007-11-01 15:23:44 UTC (rev 1254) +++ branches/team/elbunce/iaxclient/lib/audio_portaudio.c 2007-11-01 17:37:41 UTC (rev 1255) @@ -1062,6 +1062,25 @@ /* remove our devices changed callback */ Pa_RemoveDevicesChangedCallback(pa_devicesChangedCallback, d); + if( iMixer ) + { + Px_CloseMixer(iMixer); + iMixer = NULL; + } + if ( oMixer ) + { + Px_CloseMixer(oMixer); + oMixer = NULL; + } + if ( d ) + { + if ( d->devices ) + { + free(d->devices); + d->devices= NULL; + } + } + return Pa_Terminate(); } Modified: branches/team/elbunce/iaxclient/lib/codec_theora.c =================================================================== --- branches/team/elbunce/iaxclient/lib/codec_theora.c 2007-11-01 15:23:44 UTC (rev 1254) +++ branches/team/elbunce/iaxclient/lib/codec_theora.c 2007-11-01 17:37:41 UTC (rev 1255) @@ -111,7 +111,8 @@ free(c); } -static int decode(struct iaxc_video_codec *c, int inlen, char *in, int *outlen, char *out) +static int decode(struct iaxc_video_codec *c, int inlen, const char *in, + int *outlen, char *out) { struct theora_decoder *d; ogg_packet op; Modified: branches/team/elbunce/iaxclient/lib/codec_ulaw.c =================================================================== --- branches/team/elbunce/iaxclient/lib/codec_ulaw.c 2007-11-01 15:23:44 UTC (rev 1254) +++ branches/team/elbunce/iaxclient/lib/codec_ulaw.c 2007-11-01 17:37:41 UTC (rev 1255) @@ -84,7 +84,9 @@ } static void destroy ( struct iaxc_audio_codec *c) { - free(c); + if ( c->decstate ) + free(c->decstate); + free(c); } Modified: branches/team/elbunce/iaxclient/lib/iaxclient.h =================================================================== --- branches/team/elbunce/iaxclient/lib/iaxclient.h 2007-11-01 15:23:44 UTC (rev 1254) +++ branches/team/elbunce/iaxclient/lib/iaxclient.h 2007-11-01 17:37:41 UTC (rev 1255) @@ -133,6 +133,8 @@ #define IAXC_EVENT_AUDIO 10 /*!< Indicates an audio event */ #define IAXC_EVENT_VIDEOSTATS 11 /*!< Indicates a video statistics update event */ #define IAXC_EVENT_DEVICES_CHANGED 12 /*!< Indicates a devices changed event. */ +#define IAXC_EVENT_VIDCAP_ERROR 12 /*!< Indicates a video capture error occurred */ +#define IAXC_EVENT_VIDCAP_DEVICE 13 /*!< Indicates a possible video capture device insertion/removal */ #define IAXC_CALL_STATE_FREE 0 /*!< Indicates a call slot is free */ #define IAXC_CALL_STATE_ACTIVE (1<<1) /*!< Indicates a call is active */ @@ -573,6 +575,21 @@ }; /*! + A structure containing information about a DTMF event + */ +struct iaxc_ev_dtmf { + /*! + The call this DTMF event is for. + */ + int callNo; + + /*! + The digit represented by this DTMF tone + */ + char digit; +}; + +/*! A structure describing a single IAXClient event. */ typedef struct iaxc_event_struct { @@ -610,6 +627,8 @@ struct iaxc_ev_audio audio; /*! Contains registration data if type = IAXC_EVENT_REGISTRATION */ struct iaxc_ev_registration reg; + /*! Contains DTMF data if type = IAXC_EVENT_DTMF */ + struct iaxc_ev_dtmf dtmf; /*! Contains devices changed data if type = IAXC_EVENT_DEVICES_CHANGED */ struct iaxc_ev_devices_changed devschanged; } ev; @@ -945,6 +964,26 @@ */ EXPORT int iaxc_get_netstats(int call, int *rtt, struct iaxc_netstat *local, struct iaxc_netstat *remote); +/*! + A structure containing information about a video capture device. +*/ +struct iaxc_video_device { + /*! + The "human readable" name of the device + */ + const char *name; + + /*! + unique id of the device + */ + const char *id_string; + + /*! + iaxclient id of the device + */ + int id; +}; + #define IAXC_AD_INPUT (1<<0) /*!< Device is usable for input*/ #define IAXC_AD_OUTPUT (1<<1) /*!< Device is usable for output */ #define IAXC_AD_RING (1<<2) /*!< Device is usable for ring */ @@ -1136,6 +1175,28 @@ */ EXPORT int iaxc_set_audio_prefs(unsigned int prefs); +/*! + Get video capture device information. + WARNING: the array pointed to by parameter 'devs' below is owned + by iaxclient, and may be freed on subsequent calls to + this function. + \param devs Returns an array of iaxc_video_device structures. + The array will only be valid until this function is + called again (if the device list changes), or until + iaxc is shutdown. + \param nDevs Returns the number of devices in the devs array + \param devId Returns the id of the currently selected video capture device + + \return -1 on error, 0 if no change to the device list, 1 if it's been updated + */ +EXPORT int iaxc_video_devices_get(struct iaxc_video_device **devs, int *nDevs, int *devId); + +/*! + Sets the current video capture device + \param devId The id of the device to use for video capture + */ +EXPORT int iaxc_video_device_set(int devId); + /* * Acceptable range for video rezolution */ Modified: branches/team/elbunce/iaxclient/lib/iaxclient_lib.c =================================================================== --- branches/team/elbunce/iaxclient/lib/iaxclient_lib.c 2007-11-01 15:23:44 UTC (rev 1254) +++ branches/team/elbunce/iaxclient/lib/iaxclient_lib.c 2007-11-01 17:37:41 UTC (rev 1255) @@ -378,6 +378,15 @@ iaxci_post_event(e); } +void iaxci_do_dtmf_callback(int callNo, char digit) +{ + iaxc_event e; + e.type = IAXC_EVENT_DTMF; + e.ev.dtmf.callNo = callNo; + e.ev.dtmf.digit = digit; + iaxci_post_event(e); +} + static int iaxc_remove_registration_by_id(int id) { struct iaxc_registration *curr, *prev; @@ -1196,6 +1205,10 @@ iaxci_do_state_callback(callNo); iaxci_usermsg(IAXC_STATUS,"Call %d transfer released", callNo); break; + case IAX_EVENT_DTMF: + iaxci_do_dtmf_callback(callNo,e->subclass); + iaxci_usermsg(IAXC_STATUS, "DTMF digit %c received", e->subclass); + break; default: iaxci_usermsg(IAXC_STATUS, "Unknown event: %d for call %d", e->etype, callNo); break; Modified: branches/team/elbunce/iaxclient/lib/portmixer/px_win_wmme/px_win_wmme.c =================================================================== --- branches/team/elbunce/iaxclient/lib/portmixer/px_win_wmme/px_win_wmme.c 2007-11-01 15:23:44 UTC (rev 1254) +++ branches/team/elbunce/iaxclient/lib/portmixer/px_win_wmme/px_win_wmme.c 2007-11-01 17:37:41 UTC (rev 1255) @@ -671,7 +671,11 @@ ) ; if ( mmr != MMSYSERR_NOERROR ) + { + free(mixerControl); + return mmr ; + } // // find boost control @@ -701,7 +705,11 @@ } if ( boost_id == -1 ) + { + free(mixerControl); + return MMSYSERR_ERROR ; + } // // get control details @@ -724,7 +732,11 @@ ) ; if ( mmr != MMSYSERR_NOERROR ) + { + free(mixerControl); + return mmr ; + } // // update value @@ -742,6 +754,8 @@ MIXER_SETCONTROLDETAILSF_VALUE ) ; + free(mixerControl); + if ( mmr != MMSYSERR_NOERROR ) return mmr ; @@ -795,7 +809,11 @@ ) ; if ( mmr != MMSYSERR_NOERROR ) + { + free(mixerControl); + return -1 ; + } // // find boost control @@ -825,7 +843,11 @@ } if ( boost_id == -1 ) + { + free(mixerControl); + return -1 ; + } // // get control details @@ -847,6 +869,8 @@ MIXER_GETCONTROLDETAILSF_VALUE ) ; + free(mixerControl); + if ( mmr != MMSYSERR_NOERROR ) return -1 ; Modified: branches/team/elbunce/iaxclient/lib/slice.c =================================================================== --- branches/team/elbunce/iaxclient/lib/slice.c 2007-11-01 15:23:44 UTC (rev 1254) +++ branches/team/elbunce/iaxclient/lib/slice.c 2007-11-01 17:37:41 UTC (rev 1255) @@ -32,7 +32,7 @@ return 0; } -int slice(char *data, +int slice(const char *data, unsigned int size, struct slice_set_t *slice_set, struct slicer_context *sc @@ -93,7 +93,8 @@ dsc->frame_complete = 0; } -char * deslice(char *in, int inlen, int *outlen, struct deslicer_context *dsc) +char * +deslice(const char *in, int inlen, int *outlen, struct deslicer_context *dsc) { unsigned char frame_index, slice_index, num_slices, version; unsigned short source_id; Modified: branches/team/elbunce/iaxclient/lib/slice.h =================================================================== --- branches/team/elbunce/iaxclient/lib/slice.h 2007-11-01 15:23:44 UTC (rev 1254) +++ branches/team/elbunce/iaxclient/lib/slice.h 2007-11-01 17:37:41 UTC (rev 1255) @@ -77,7 +77,7 @@ * sc - holds stream information such as source id and frame index * Returns 0 if completed successfully or a negative value if failure. */ -int slice(char *data, +int slice(const char *data, unsigned int size, struct slice_set_t *slice_set, struct slicer_context *sc @@ -103,6 +103,7 @@ * Returns a pointer to a buffer containing the completed frame and updates * outlen with the frame size if successful */ -char * deslice(char *in, int inlen, int *outlen, struct deslicer_context *dsc); +char * +deslice(const char *in, int inlen, int *outlen, struct deslicer_context *dsc); -#endif // __SLICE_H__ +#endif Modified: branches/team/elbunce/iaxclient/lib/video.c =================================================================== --- branches/team/elbunce/iaxclient/lib/video.c 2007-11-01 15:23:44 UTC (rev 1254) +++ branches/team/elbunce/iaxclient/lib/video.c 2007-11-01 17:37:41 UTC (rev 1255) @@ -31,13 +31,16 @@ #include "codec_theora.h" #endif +#if defined(WIN32) +#define strdup _strdup +#endif + struct video_info { vidcap_state * vc; vidcap_sapi * sapi; vidcap_src * src; struct vidcap_sapi_info sapi_info; - struct vidcap_src_info src_info; struct vidcap_fmt_info fmt_info; /* these are the requested (post-scaling) dimensions */ @@ -63,6 +66,15 @@ int prefs; struct slicer_context * sc; + + /* these two struct arrays are correlated by index */ + struct vidcap_src_info * vc_src_info; + struct iaxc_video_device * devices; + MUTEX dev_list_lock; + + int device_count; + int selected_device_id; + int next_id; }; struct video_format_info @@ -492,6 +504,24 @@ */ } +static int video_device_notification_callback(vidcap_sapi *sapi, + void * user_context) +{ + iaxc_event evt; + + if ( sapi != vinfo.sapi ) + { + fprintf(stderr, "ERROR: wrong sapi in device notification\n"); + return -1; + } + + /* notify application that device list has been updated */ + evt.type = IAXC_EVENT_VIDCAP_DEVICE; + iaxci_post_event(evt); + + return 0; +} + static int capture_callback(vidcap_src * src, void * user_data, struct vidcap_capture_info * cap_info) { @@ -517,6 +547,8 @@ const char * source_buf = 0; int source_buf_size = 0; + iaxc_event evt; + int i; if ( cap_info->error_status ) @@ -524,6 +556,9 @@ fprintf(stderr, "vidcap capture error %d\n", cap_info->error_status); vinfo.capturing = 0; + + evt.type = IAXC_EVENT_VIDCAP_ERROR; + iaxci_post_event(evt); return -1; } @@ -732,30 +767,10 @@ }; static const int fourcc_list_len = sizeof(fourcc_list) / sizeof(int); - int i; static const int max_factor = 2; int scale_factor; + int i; - if ( !vinfo.src ) - { - /* Acquire the default source */ - if ( !(vinfo.src = vidcap_src_acquire(vinfo.sapi, 0)) ) - { - fprintf(stderr, "failed to acquire video source\n"); - return -1; - } - - if ( vidcap_src_info_get(vinfo.src, &vinfo.src_info) ) - { - fprintf(stderr, "failed to get video source info\n"); - return -1; - } - - fprintf(stderr, "acquired vidcap source %s (%s)\n", - vinfo.src_info.description, - vinfo.src_info.identifier); - } - vinfo.width = vfinfo.width; vinfo.height = vfinfo.height; vinfo.fmt_info.fps_numerator = vfinfo.framerate; @@ -878,6 +893,46 @@ return 0; } +static int ensure_acquired(int dev_id) +{ + int dev_num; + + if ( !vinfo.src ) + { + MUTEXLOCK(&vinfo.dev_list_lock); + + for ( dev_num = 0; dev_num < vinfo.device_count; dev_num++ ) + { + if ( vinfo.devices[dev_num].id == dev_id ) + break; + } + + if ( dev_num == vinfo.device_count ) + { + MUTEXUNLOCK(&vinfo.dev_list_lock); + fprintf(stderr, "invalid vidcap dev id: %d\n", dev_id); + return -1; + } + + if ( !(vinfo.src = vidcap_src_acquire(vinfo.sapi, + &vinfo.vc_src_info[dev_num])) ) + { + vinfo.src = 0; + MUTEXUNLOCK(&vinfo.dev_list_lock); + fprintf(stderr, "failed to acquire video source\n"); + return -1; + } + + fprintf(stderr, "acquired vidcap source %s (%s)\n", + vinfo.vc_src_info[dev_num].description, + vinfo.vc_src_info[dev_num].identifier); + + MUTEXUNLOCK(&vinfo.dev_list_lock); + } + + return 0; +} + EXPORT int iaxc_set_video_prefs(unsigned int prefs) { const unsigned int prefs_mask = @@ -888,9 +943,14 @@ IAXC_VIDEO_PREF_SEND_DISABLE | IAXC_VIDEO_PREF_RECV_RGB32 | IAXC_VIDEO_PREF_CAPTURE_DISABLE; + int ret; if ( prefs & ~prefs_mask ) + { + fprintf(stderr, "ERROR: unexpected video preference: 0x%0x\n", + prefs); return -1; + } vinfo.prefs = prefs; @@ -913,7 +973,15 @@ { if ( vidcap_src_capture_stop(vinfo.src) ) fprintf(stderr, "failed vidcap_src_capture_stop\n"); + vinfo.capturing = 0; + + if ( vinfo.src && vidcap_src_release(vinfo.src) ) + { + fprintf(stderr, "failed to release a video source\n"); + } + + vinfo.src = 0; } MUTEXUNLOCK(&vinfo.camera_lock); } @@ -922,17 +990,30 @@ MUTEXLOCK(&vinfo.camera_lock); if ( !vinfo.capturing ) { + if ( vinfo.selected_device_id < 0 ) + { + MUTEXUNLOCK(&vinfo.camera_lock); + return -1; + } + + if ( ensure_acquired(vinfo.selected_device_id) ) + { + MUTEXUNLOCK(&vinfo.camera_lock); + return -1; + } + if ( prepare_for_capture() ) { MUTEXUNLOCK(&vinfo.camera_lock); return -1; } - if ( vidcap_src_capture_start(vinfo.src, - capture_callback, 0) ) + if ( (ret = vidcap_src_capture_start(vinfo.src, + capture_callback, 0)) ) { MUTEXUNLOCK(&vinfo.camera_lock); - fprintf(stderr, "failed to start video capture\n"); + fprintf(stderr, "failed to start video capture: %d\n", + ret); return -1; } @@ -1233,10 +1314,223 @@ return 0; } +EXPORT int iaxc_video_devices_get(struct iaxc_video_device **devs, + int *num_devs, int *id_selected) +{ + int new_device_count; + int old_device_count; + struct vidcap_src_info *new_src_list; + struct vidcap_src_info *old_src_list; + struct iaxc_video_device *new_iaxc_dev_list; + struct iaxc_video_device *old_iaxc_dev_list; + int found_selected_device = 0; + int list_changed = 0; + int i, n; + + /* update libvidcap's device list */ + new_device_count = vidcap_src_list_update(vinfo.sapi); + if ( new_device_count != vinfo.device_count ) + list_changed = 1; + + if ( new_device_count < 0 ) + { + fprintf(stderr, "ERROR: failed getting updated vidcap device list: %d\n", + new_device_count); + return -1; + } + + new_src_list = (struct vidcap_src_info *)malloc(new_device_count * + sizeof(struct vidcap_src_info)); + if ( !new_src_list ) + { + fprintf(stderr, "ERROR: failed updated source allocation\n"); + return -1; + } + + new_iaxc_dev_list = (struct iaxc_video_device *)malloc( + new_device_count * sizeof(struct iaxc_video_device)); + if ( !new_iaxc_dev_list ) + { + free(new_src_list); + fprintf(stderr, "ERROR: failed source allocation update\n"); + return -1; + } + + /* get an updated libvidcap device list */ + if ( vidcap_src_list_get(vinfo.sapi, new_device_count, new_src_list) ) + { + fprintf(stderr, "ERROR: failed vidcap_srcList_get()\n"); + + free(new_src_list); + free(new_iaxc_dev_list); + return -1; + } + + /* build a new iaxclient video source list */ + found_selected_device = 0; + for ( n = 0; n < new_device_count; n++ ) + { + new_iaxc_dev_list[n].name = strdup(new_src_list[n].description); + new_iaxc_dev_list[n].id_string = strdup(new_src_list[n].identifier); + + /* This device may have been here all along. + * If it has, re-assign that device id + * else assign a new id + */ + for ( i = 0; i < vinfo.device_count; i++ ) + { + if ( !strcmp(new_iaxc_dev_list[n].name, vinfo.devices[i].name) ) + { + new_iaxc_dev_list[n].id = vinfo.devices[i].id; + + if ( vinfo.selected_device_id == new_iaxc_dev_list[n].id ) + found_selected_device = 1; + break; + } + } + if ( i == vinfo.device_count ) + { + new_iaxc_dev_list[n].id = vinfo.next_id++; + + list_changed = 1; + } + } + + if ( !list_changed ) + { + /* Free new lists. Nothing's really changed */ + free(new_src_list); + for ( i = 0; i < new_device_count; i++ ) + { + free((void *)new_iaxc_dev_list[i].name); + free((void *)new_iaxc_dev_list[i].id_string); + } + free(new_iaxc_dev_list); + } + else + { + old_device_count = vinfo.device_count; + old_src_list = vinfo.vc_src_info; + old_iaxc_dev_list = vinfo.devices; + + /* Update iaxclient's device list info */ + /* Lock since other iaxclient funcs use these fields */ + MUTEXLOCK(&vinfo.dev_list_lock); + + vinfo.device_count = new_device_count; + vinfo.vc_src_info = new_src_list; + vinfo.devices = new_iaxc_dev_list; + + MUTEXUNLOCK(&vinfo.dev_list_lock); + + /* free old lists */ + free(old_src_list); + for ( i = 0; i < old_device_count; i++ ) + { + free((void *)old_iaxc_dev_list[i].name); + free((void *)old_iaxc_dev_list[i].id_string); + } + free(old_iaxc_dev_list); + } + + *devs = vinfo.devices; + *num_devs = vinfo.device_count; + *id_selected = found_selected_device ? vinfo.selected_device_id : -1; + + return list_changed; +} + +EXPORT int iaxc_video_device_set(int capture_dev_id) +{ + int ret = 0; + int dev_num = 0; + + MUTEXLOCK(&vinfo.camera_lock); + + if ( capture_dev_id == vinfo.selected_device_id ) + { + MUTEXUNLOCK(&vinfo.camera_lock); + return 0; + } + + if ( capture_dev_id < 0 ) + { + MUTEXUNLOCK(&vinfo.camera_lock); + fprintf(stderr, "invalid video device id ( < 0 )\n"); + return -1; + } + + MUTEXLOCK(&vinfo.dev_list_lock); + + for ( dev_num = 0; dev_num < vinfo.device_count; dev_num++ ) + { + if ( vinfo.devices[dev_num].id == capture_dev_id ) + break; + } + + if ( dev_num == vinfo.device_count ) + { + MUTEXUNLOCK(&vinfo.dev_list_lock); + MUTEXUNLOCK(&vinfo.camera_lock); + fprintf(stderr, "invalid video device id: %d\n", + capture_dev_id); + return -1; + } + + vinfo.selected_device_id = capture_dev_id; + + if ( vinfo.src && vidcap_src_release(vinfo.src) ) + { + fprintf(stderr, "failed to release video source\n"); + } + + vinfo.src = 0; + + MUTEXUNLOCK(&vinfo.dev_list_lock); + + if ( vinfo.capturing ) + { + if ( ensure_acquired(capture_dev_id) ) + { + MUTEXUNLOCK(&vinfo.camera_lock); + return -1; + } + + if ( prepare_for_capture() ) + { + MUTEXUNLOCK(&vinfo.camera_lock); + return -1; + } + + if ( (ret = vidcap_src_capture_start(vinfo.src, + capture_callback, 0)) ) + { + MUTEXUNLOCK(&vinfo.camera_lock); + fprintf(stderr, "failed to restart video capture: %d\n", ret); + return -1; + } + } + + MUTEXUNLOCK(&vinfo.camera_lock); + + return 0; +} + int video_initialize(void) { + int i; + const int starting_id = 50; + memset(&vinfo, 0, sizeof(vinfo)); + vinfo.width = vfinfo.width; + vinfo.height = vfinfo.height; + vinfo.selected_device_id = -1; + vinfo.next_id = starting_id; + + MUTEXINIT(&vinfo.camera_lock); + MUTEXINIT(&vinfo.dev_list_lock); + if ( !(vinfo.vc = vidcap_initialize()) ) { fprintf(stderr, "ERROR: failed vidcap_initialize\n"); @@ -1259,23 +1553,86 @@ vinfo.sapi_info.description, vinfo.sapi_info.identifier); - /* TODO: Maybe we should reevaluate these defaults. Once could - * make an argument that reasonable users of iaxclient might - * not want video to be delivered as soon as they iaxc_initialize(). + vinfo.device_count = vidcap_src_list_update(vinfo.sapi); + if ( vinfo.device_count < 0 ) + { + fprintf(stderr, + "ERROR: failed updating video capture devices list\n"); + goto bail; + } + + vinfo.vc_src_info = (struct vidcap_src_info *)malloc(vinfo.device_count * + sizeof(struct vidcap_src_info)); + if ( !vinfo.vc_src_info ) + { + fprintf(stderr, "ERROR: failed vinfo field allocations\n"); + goto bail; + } + + vinfo.devices = (struct iaxc_video_device *)malloc(vinfo.device_count * + sizeof(struct iaxc_video_device)); + if ( !vinfo.devices ) + { + fprintf(stderr, "ERROR: failed vinfo field allocation\n"); + free(vinfo.vc_src_info); + goto bail; + } + + if ( vidcap_src_list_get(vinfo.sapi, vinfo.device_count, + vinfo.vc_src_info) ) + { + fprintf(stderr, "ERROR: failed vidcap_src_list_get()\n"); + free(vinfo.vc_src_info); + free(vinfo.devices); + goto bail; + } + + /* build initial iaxclient video source list */ + for ( i = 0; i < vinfo.device_count; i++ ) + { + vinfo.devices[i].name = strdup(vinfo.vc_src_info[i].description); + vinfo.devices[i].id_string = strdup(vinfo.vc_src_info[i].identifier); + /* Let's be clear that the device id is not some + * base-zero index. Once plug-n-play is implemented, + * these ids may diverge as devices are added + * and removed. + */ + vinfo.devices[i].id = vinfo.next_id++; + } + + if ( vinfo.device_count ) + { + /* set default source - the first device */ + iaxc_video_device_set(vinfo.devices[0].id); + } + + /* setup device notification callback + * for device insertion and removal */ + if ( vidcap_srcs_notify(vinfo.sapi, &video_device_notification_callback, 0) ) + { + fprintf(stderr, "ERROR: failed vidcap_srcs_notify()\n"); + goto late_bail; + } + vinfo.prefs = IAXC_VIDEO_PREF_RECV_LOCAL_RAW | - IAXC_VIDEO_PREF_RECV_REMOTE_RAW; + IAXC_VIDEO_PREF_RECV_REMOTE_RAW | + IAXC_VIDEO_PREF_CAPTURE_DISABLE; - MUTEXINIT(&vinfo.camera_lock); + return 0; - /* We reset the existing video preferences to yield the side-effect - * of potentially starting or stopping the video capture. - */ - iaxc_set_video_prefs(vinfo.prefs); +late_bail: + free(vinfo.vc_src_info); - return 0; + for ( i = 0; i < vinfo.device_count; i++ ) + { + free((void *)vinfo.devices[i].name); + free((void *)vinfo.devices[i].id_string); + } + free(vinfo.devices); + bail: vidcap_destroy(vinfo.vc); vinfo.vc = 0; @@ -1284,13 +1641,24 @@ int video_destroy(void) { + int i; + if ( !vinfo.vc ) return -1; + free(vinfo.vc_src_info); + for ( i = 0; i < vinfo.device_count; i++ ) + { + free((void *)vinfo.devices[i].name); + free((void *)vinfo.devices[i].id_string); + } + free(vinfo.devices); + vidcap_destroy(vinfo.vc); vinfo.vc = 0; MUTEXDESTROY(&vinfo.camera_lock); + MUTEXDESTROY(&vinfo.dev_list_lock); if ( vinfo.converted_i420_buf ) { @@ -1326,7 +1694,7 @@ * we are saying that the "camera is working" if there exists * more than zero cameras. */ - return vidcap_src_list_update(vinfo.sapi); + return vidcap_src_list_update(vinfo.sapi) > 0; } int video_send_stats(struct iaxc_call * call) Modified: branches/team/elbunce/iaxclient/simpleclient/stresstest/stresstest.c =================================================================== --- branches/team/elbunce/iaxclient/simpleclient/stresstest/stresstest.c 2007-11-01 15:23:44 UTC (rev 1254) +++ branches/team/elbunce/iaxclient/simpleclient/stresstest/stresstest.c 2007-11-01 17:37:41 UTC (rev 1255) @@ -23,7 +23,6 @@ #include <signal.h> #include "iaxclient.h" -#include "slice.h" #include "file.h" #ifdef WIN32 @@ -57,7 +56,8 @@ static int send_video = 1; static int send_audio = 1; static int print_netstats = 0; -static int timeout = 0; +static int call_timeout_ms = 0; +static int connect_timeout_ms = 5000; static int video_frames_count = 0; static int audio_frames_count = 0; @@ -193,7 +193,8 @@ " -a stop sending audio\n" " -l run file in a loop\n" " -n dump periodic netstats to log file\n" - " -t <timeout> terminate after timeout seconds and report status via return code\n" + " -t <TIMEOUT> terminate call after TIMEOUT seconds\n" + " -c <TIMEOUT> try connecting for TIMEOUT seconds (default 5)\n" " -L <FILE> log to FILE\n" "\n" ); @@ -269,14 +270,14 @@ switch ( argv[i][1] ) { case 'F': /* set video params */ - { - formatp = 1 << atoi(argv[++i]); - framerate = atoi(argv[++i]); - bitrate = atoi(argv[++i]); - width = atoi(argv[++i]); - height = atoi(argv[++i]); - fragsize = atoi(argv[++i]); - } + if ( i+6 >= argc ) + usage(); + formatp = 1 << atoi(argv[++i]); + framerate = atoi(argv[++i]); + bitrate = atoi(argv[++i]); + width = atoi(argv[++i]); + height = atoi(argv[++i]); + fragsize = atoi(argv[++i]); break; case 'o': if ( i+1 >= argc ) @@ -298,8 +299,13 @@ case 't': if ( i+1 >= argc ) usage(); - timeout = 1000 * atoi(argv[++i]); + call_timeout_ms = 1000 * atoi(argv[++i]); break; + case 'c': + if ( i+1 >= argc ) + usage(); + connect_timeout_ms = 1000 * atoi(argv[++i]); + break; case 'L': if ( i+1 >= argc ) usage(); @@ -314,7 +320,7 @@ usage(); } } else - dest=argv[i]; + dest = argv[i]; } if ( dest == NULL ) @@ -355,11 +361,12 @@ mylog("Failed to make call to '%s'", dest); // Wait for the call to be established; - while ( !call_established ) + while ( !call_established && running ) { struct timeval now; gettimeofday(&now, NULL); - if ( timeout > 0 && msecdiff(&start_time, &now) > timeout ) + if ( connect_timeout_ms > 0 && + msecdiff(&start_time, &now) > connect_timeout_ms ) hangup_and_exit(TEST_NO_CONNECTION); iaxc_millisleep(5); } @@ -394,7 +401,8 @@ // Exit after a positive timeout gettimeofday(&now, NULL); - if ( timeout > 0 && msecdiff(&start_time, &now) > timeout ) + if ( call_timeout_ms > 0 && + msecdiff(&start_time, &now) > call_timeout_ms ) running = 0; } Modified: branches/team/elbunce/iaxclient/simpleclient/vtestcall/vtestcall.c =================================================================== --- branches/team/elbunce/iaxclient/simpleclient/vtestcall/vtestcall.c 2007-11-01 15:23:44 UTC (rev 1254) +++ branches/team/elbunce/iaxclient/simpleclient/vtestcall/vtestcall.c 2007-11-01 17:37:41 UTC (rev 1255) @@ -238,6 +238,9 @@ e.ev.audio.source == IAXC_SOURCE_REMOTE ? "remote" : "local", e.ev.audio.encoded ? "encoded" : "raw"); break; + case IAXC_EVENT_VIDCAP_ERROR: + fprintf(stderr, "\nVIDEO CAPTURE DEVICE ERROR\n"); + break; default: break; } @@ -275,12 +278,28 @@ int nDevs, input, output,ring; int i; + int vinput; + int nVdevs; + struct iaxc_video_device *vDevs; + iaxc_audio_devices_get(&devs,&nDevs, &input, &output, &ring); + printf("\nThere are %d audio devices:\n", nDevs); for(i=0;i<nDevs;i++) { - fprintf(stderr, "DEVICE ID=%d NAME=%s CAPS=%lx\n", devs[i].devID, devs[i].name, devs[i].capabilities); + fprintf(stderr, "AUDIO DEVICE ID = %d NAME = %s CAPS=%lx\n", + devs[i].devID, devs[i].name, devs[i].capabilities); iaxc_audio_devices_set(input,output,ring); } + + iaxc_video_devices_get(&vDevs, &nVdevs, &vinput); + printf("\nThere are %d video capture devices:\n", nVdevs); + for ( i = 0; i < nVdevs; i++ ) + { + printf("VIDEO DEVICE ID = %d NAME = %s\n", + vDevs[i].id, vDevs[i].name); + } + printf("Currently selected VIDEO device id: %d\n", vinput); + } void usage() @@ -363,7 +382,11 @@ exit(-1); } - if ( v.size <= 0 ) fprintf(stderr, "WARNING: size %d in callback\n", v.size); + if ( v.size <= 0 ) + { + fprintf(stderr, "WARNING: size %d in callback\n", v.size); + return 0; + } if ( !remote ) { @@ -528,12 +551,18 @@ //iaxc_set_audio_prefs(IAXC_AUDIO_PREF_RECV_LOCAL_RAW | IAXC_AUDIO_PREF_RECV_REMOTE_RAW); fprintf(f, "\n\ - TestCall accept some keyboard input while it's running.\n\ + vtestcall accepts keyboard input while it's running.\n\ You must hit 'enter' for your keypresses to be recognized,\n\ - although you can type more than one key on a line\n\ + although you can type more than one key on a line:\n\ \n\ - q: drop the call and hangup.\n\ - 0-9 * or #: dial those DTMF digits.\n"); + s: switch video capture devices \n\ + b: bypass video jitter stuff\n\ + r: reject incoming call\n\ + d: dial\n\ + c: set caller id info\n\ + w: video window toggle\n\ + 0-9 * or #: dial those DTMF digits\n\ + q: drop the call and hangup\n"); printf("Starting processing thread...\n"); iaxc_start_processing_thread(); @@ -615,6 +644,39 @@ iaxc_set_callerid(myCIDname,myCIDnumber); } break; + case SDLK_s: + { + int input; + int ndevs; + struct iaxc_video_device *vDevs; + int newVideoDevId; + + iaxc_video_devices_get(&vDevs, &ndevs, &input); + + printf("There are %d video capture devices:\n", ndevs); + for ( i = 0; i < ndevs; i++ ) + { + printf("VIDEO DEVICE ID = %d NAME = %s\n", vDevs[i].id, vDevs[i].name); + } + printf("Currently selected device id: %d\n", input); + + printf("Select video capture device: "); + fflush(stdin); + fscanf(stdin,"%d", &newVideoDevId); + + if ( iaxc_video_device_set(newVideoDevId) ) + { + printf("Error selecting device id %d\n", + newVideoDevId); + break; + } + + /* explicitly set the prefs again in case + * previous capture device has failed + */ + iaxc_set_video_prefs( iaxc_get_video_prefs() ); + } + break; case SDLK_t: /* transmit-only */ printf("transmit mode active\n"); break; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <do...@us...> - 2007-11-21 23:53:35
|
Revision: 1279 http://iaxclient.svn.sourceforge.net/iaxclient/?rev=1279&view=rev Author: dohpaz Date: 2007-11-21 15:53:32 -0800 (Wed, 21 Nov 2007) Log Message: ----------- Merge up to trunk of r1278. Modified Paths: -------------- branches/team/elbunce/iaxclient/configure.ac branches/team/elbunce/iaxclient/contrib/win/vs2005/libvidcap.vcproj branches/team/elbunce/iaxclient/lib/audio_encode.c branches/team/elbunce/iaxclient/lib/ringbuffer.c Removed Paths: ------------- branches/team/elbunce/iaxclient/contrib/win/vs2005/libvideolib.vcproj Modified: branches/team/elbunce/iaxclient/configure.ac =================================================================== --- branches/team/elbunce/iaxclient/configure.ac 2007-11-21 23:46:10 UTC (rev 1278) +++ branches/team/elbunce/iaxclient/configure.ac 2007-11-21 23:53:32 UTC (rev 1279) @@ -392,8 +392,12 @@ # Autodetect clients if test "x$enable_clients" = "xauto"; then - clients="$clients testcall stresstest" + clients="$clients testcall" + if test x$has_oggz = xyes && test x$has_theora = xyes; then + clients="$clients stresstest" + fi + if test ! x$has_wx = xno; then clients="$clients iaxphone" if test "x$has_gdk2" = xyes; then Modified: branches/team/elbunce/iaxclient/contrib/win/vs2005/libvidcap.vcproj =================================================================== --- branches/team/elbunce/iaxclient/contrib/win/vs2005/libvidcap.vcproj 2007-11-21 23:46:10 UTC (rev 1278) +++ branches/team/elbunce/iaxclient/contrib/win/vs2005/libvidcap.vcproj 2007-11-21 23:53:32 UTC (rev 1279) @@ -187,6 +187,26 @@ </FileConfiguration> </File> <File + RelativePath="..\..\..\..\libvidcap\src\directshow\DirectShowObject.cpp" + > + <FileConfiguration + Name="Debug|Win32" + > + <Tool + Name="VCCLCompilerTool" + CompileAs="2" + /> + </FileConfiguration> + <FileConfiguration + Name="Release|Win32" + > + <Tool + Name="VCCLCompilerTool" + CompileAs="2" + /> + </FileConfiguration> + </File> + <File RelativePath="..\..\..\..\libvidcap\src\directshow\DirectShowSource.cpp" > <FileConfiguration @@ -283,6 +303,26 @@ > </File> <File + RelativePath="..\..\..\..\libvidcap\src\directshow\SourceStateMachine.cpp" + > + <FileConfiguration + Name="Debug|Win32" + > + <Tool + Name="VCCLCompilerTool" + CompileAs="2" + /> + </FileConfiguration> + <FileConfiguration + Name="Release|Win32" + > + <Tool + Name="VCCLCompilerTool" + CompileAs="2" + /> + </FileConfiguration> + </File> + <File RelativePath="..\..\..\..\libvidcap\src\vidcap.c" > </File> @@ -305,6 +345,10 @@ > </File> <File + RelativePath="..\..\..\..\libvidcap\src\directshow\DirectShowObject.h" + > + </File> + <File RelativePath="..\..\..\..\libvidcap\src\directshow\DirectShowSource.h" > </File> @@ -321,18 +365,10 @@ > </File> <File - RelativePath="..\..\..\..\libvidcap\src\directshow\LocklessQueue.h" - > - </File> - <File RelativePath="..\..\..\..\libvidcap\src\logging.h" > </File> <File - RelativePath="..\..\..\..\libvidcap\src\logging.h" - > - </File> - <File RelativePath="..\..\..\..\libvidcap\src\sapi.h" > </File> @@ -345,6 +381,10 @@ > </File> <File + RelativePath="..\..\..\..\libvidcap\src\directshow\SourceStateMachine.h" + > + </File> + <File RelativePath="..\..\..\..\libvidcap\include\vidcap\vidcap.h" > </File> Deleted: branches/team/elbunce/iaxclient/contrib/win/vs2005/libvideolib.vcproj =================================================================== --- branches/team/elbunce/iaxclient/contrib/win/vs2005/libvideolib.vcproj 2007-11-21 23:46:10 UTC (rev 1278) +++ branches/team/elbunce/iaxclient/contrib/win/vs2005/libvideolib.vcproj 2007-11-21 23:53:32 UTC (rev 1279) @@ -1,171 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?> -<VisualStudioProject - ProjectType="Visual C++" - Version="8.00" - Name="libvideolib" - ProjectGUID="{BE15A94D-3766-4693-ABA8-5FBAACBBCC08}" - > - <Platforms> - <Platform - Name="Win32" - /> - </Platforms> - <ToolFiles> - </ToolFiles> - <Configurations> - <Configuration - Name="Debug|Win32" - OutputDirectory="$(SolutionDir)\$(ConfigurationName)\$(ProjectName)" - IntermediateDirectory="$(OutDir)" - ConfigurationType="4" - CharacterSet="2" - > - <Tool - Name="VCPreBuildEventTool" - /> - <Tool - Name="VCCustomBuildTool" - /> - <Tool - Name="VCXMLDataGeneratorTool" - /> - <Tool - Name="VCWebServiceProxyGeneratorTool" - /> - <Tool - Name="VCMIDLTool" - /> - <Tool - Name="VCCLCompilerTool" - Optimization="0" - AdditionalIncludeDirectories="..\..\..\lib\videoLib;..\..\..\lib;"$(PSDK_DIR)\Include";"$(PSDK_DIR)\Samples\Multimedia\DirectShow\BaseClasses";"$(DXSDK_DIR)\Include"" - PreprocessorDefinitions="WIN32;_DEBUG;_LIB;NTDDI_VERSION=NTDDI_WIN2KSP4;_WIN32_WINNT=0x0500;WINVER=0x0500" - BasicRuntimeChecks="3" - RuntimeLibrary="3" - WarningLevel="3" - Detect64BitPortabilityProblems="true" - DebugInformationFormat="4" - DisableSpecificWarnings="4312" - /> - <Tool - Name="VCManagedResourceCompilerTool" - /> - <Tool - Name="VCResourceCompilerTool" - /> - <Tool - Name="VCPreLinkEventTool" - /> - <Tool - Name="VCLibrarianTool" - /> - <Tool - Name="VCALinkTool" - /> - <Tool - Name="VCXDCMakeTool" - /> - <Tool - Name="VCBscMakeTool" - /> - <Tool - Name="VCFxCopTool" - /> - <Tool - Name="VCPostBuildEventTool" - /> - </Configuration> - <Configuration - Name="Release|Win32" - OutputDirectory="$(SolutionDir)\$(ConfigurationName)\$(ProjectName)" - IntermediateDirectory="$(OutDir)" - ConfigurationType="4" - CharacterSet="2" - WholeProgramOptimization="1" - > - <Tool - Name="VCPreBuildEventTool" - /> - <Tool - Name="VCCustomBuildTool" - /> - <Tool - Name="VCXMLDataGeneratorTool" - /> - <Tool - Name="VCWebServiceProxyGeneratorTool" - /> - <Tool - Name="VCMIDLTool" - /> - <Tool - Name="VCCLCompilerTool" - AdditionalIncludeDirectories="..\..\..\lib\videoLib;..\..\..\lib;"$(PSDK_DIR)\Include";"$(PSDK_DIR)\Samples\Multimedia\DirectShow\BaseClasses";"$(DXSDK_DIR)\Include"" - PreprocessorDefinitions="WIN32;NDEBUG;_LIB;NTDDI_VERSION=NTDDI_WIN2KSP4;_WIN32_WINNT=0x0500;WINVER=0x0500" - RuntimeLibrary="2" - WarningLevel="3" - Detect64BitPortabilityProblems="true" - DisableSpecificWarnings="4312" - /> - <Tool - Name="VCManagedResourceCompilerTool" - /> - <Tool - Name="VCResourceCompilerTool" - /> - <Tool - Name="VCPreLinkEventTool" - /> - <Tool - Name="VCLibrarianTool" - /> - <Tool - Name="VCALinkTool" - /> - <Tool - Name="VCXDCMakeTool" - /> - <Tool - Name="VCBscMakeTool" - /> - <Tool - Name="VCFxCopTool" - /> - <Tool - Name="VCPostBuildEventTool" - /> - </Configuration> - </Configurations> - <References> - </References> - <Files> - <Filter - Name="Source Files" - Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx" - UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}" - > - <File - RelativePath="..\..\..\lib\videoLib\video_grab.c" - > - </File> - <File - RelativePath="..\..\..\lib\videoLib\win32\wingrab.cpp" - > - </File> - </Filter> - <Filter - Name="Header Files" - Filter="h;hpp;hxx;hm;inl;inc;xsd" - UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}" - > - </Filter> - <Filter - Name="Resource Files" - Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav" - UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}" - > - </Filter> - </Files> - <Globals> - </Globals> -</VisualStudioProject> Modified: branches/team/elbunce/iaxclient/lib/audio_encode.c =================================================================== --- branches/team/elbunce/iaxclient/lib/audio_encode.c 2007-11-21 23:46:10 UTC (rev 1278) +++ branches/team/elbunce/iaxclient/lib/audio_encode.c 2007-11-21 23:53:32 UTC (rev 1279) @@ -94,7 +94,6 @@ static void set_speex_filters() { int i; - float f; if ( !st ) return; @@ -107,10 +106,10 @@ speex_preprocess_ctl(st, SPEEX_PREPROCESS_SET_DENOISE, &i); /* make vad more sensitive */ - f = 0.30f; - speex_preprocess_ctl(st, SPEEX_PREPROCESS_SET_PROB_START, &f); - f = 0.07f; - speex_preprocess_ctl(st, SPEEX_PREPROCESS_SET_PROB_CONTINUE, &f); + i = 30; + speex_preprocess_ctl(st, SPEEX_PREPROCESS_SET_PROB_START, &i); + i = 7; + speex_preprocess_ctl(st, SPEEX_PREPROCESS_SET_PROB_CONTINUE, &i); } static void calculate_level(short *audio, int len, float *level) Modified: branches/team/elbunce/iaxclient/lib/ringbuffer.c =================================================================== --- branches/team/elbunce/iaxclient/lib/ringbuffer.c 2007-11-21 23:46:10 UTC (rev 1278) +++ branches/team/elbunce/iaxclient/lib/ringbuffer.c 2007-11-21 23:53:32 UTC (rev 1279) @@ -100,7 +100,7 @@ #elif defined(__GNUC__) /* GCC understands volatile asm and "memory" to mean it * should not reorder memory read/writes */ -# if defined( __ppc__ ) +# if defined( __ppc__ ) || defined( __powerpc__ ) # define rb_FullMemoryBarrier() asm volatile("sync":::"memory") # define rb_ReadMemoryBarrier() asm volatile("sync":::"memory") # define rb_WriteMemoryBarrier() asm volatile("sync":::"memory") This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <do...@us...> - 2007-11-28 04:08:04
|
Revision: 1285 http://iaxclient.svn.sourceforge.net/iaxclient/?rev=1285&view=rev Author: dohpaz Date: 2007-11-27 20:08:06 -0800 (Tue, 27 Nov 2007) Log Message: ----------- Add iax_seed_random() and iax_random() that will use the best random number generation I can find on a particular platform. Fall back to rand() in desperation. Lower 12 bits of rand() are not very random on many platforms, one should NEVER do a straight modulus of it's return value. Add myself to contributors for various files I've contributed to. Modified Paths: -------------- branches/team/elbunce/iaxclient/AUTHORS branches/team/elbunce/iaxclient/configure.ac branches/team/elbunce/iaxclient/lib/audio_encode.c branches/team/elbunce/iaxclient/lib/audio_portaudio.c branches/team/elbunce/iaxclient/lib/iaxclient_lib.c branches/team/elbunce/iaxclient/lib/libiax2/src/iax-client.h branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c branches/team/elbunce/iaxclient/lib/video.c Modified: branches/team/elbunce/iaxclient/AUTHORS =================================================================== --- branches/team/elbunce/iaxclient/AUTHORS 2007-11-26 22:02:43 UTC (rev 1284) +++ branches/team/elbunce/iaxclient/AUTHORS 2007-11-28 04:08:06 UTC (rev 1285) @@ -9,7 +9,7 @@ Steve Underwood <st...@co...> [PLC implementation from spandsp] Jean-Denis Girard <jd....@sy...> [URL Receive implementation] Panfilov Dmitry <di...@bd...> [Basic ALSA-native audio driver] -Erik Bunce <kd...@bu...> [Assorted fixes/tweaks, Documentation] +Erik Bunce <kd...@bu...> [Assorted fixes/tweaks/features, Documentation] Mihai Balea <mihai at hates dot ms> Bill Welch <welch1820 at gmail dot com> [Project files for several MS development environments] Peter Grayson <jpg...@gm...> Modified: branches/team/elbunce/iaxclient/configure.ac =================================================================== --- branches/team/elbunce/iaxclient/configure.ac 2007-11-26 22:02:43 UTC (rev 1284) +++ branches/team/elbunce/iaxclient/configure.ac 2007-11-28 04:08:06 UTC (rev 1285) @@ -46,6 +46,7 @@ AC_TYPE_SIZE_T AC_CHECK_FUNCS([vsnprintf _vsnprintf]) +AC_CHECK_FUNCS([srandomdev srandom srand48 random lrand48]) ACX_PTHREAD Modified: branches/team/elbunce/iaxclient/lib/audio_encode.c =================================================================== --- branches/team/elbunce/iaxclient/lib/audio_encode.c 2007-11-26 22:02:43 UTC (rev 1284) +++ branches/team/elbunce/iaxclient/lib/audio_encode.c 2007-11-28 04:08:06 UTC (rev 1285) @@ -327,7 +327,7 @@ if(iax_send_voice(call->session,format, outbuf, sizeof(outbuf) - outsize, samples-insize) == -1) { - puts("Failed to send voice!"); + fprintf(stderr, "Failed to send voice! %s\n", iax_errstr); return -1; } Modified: branches/team/elbunce/iaxclient/lib/audio_portaudio.c =================================================================== --- branches/team/elbunce/iaxclient/lib/audio_portaudio.c 2007-11-26 22:02:43 UTC (rev 1284) +++ branches/team/elbunce/iaxclient/lib/audio_portaudio.c 2007-11-28 04:08:06 UTC (rev 1285) @@ -9,6 +9,7 @@ * Steve Kann <st...@st...> * Michael Van Donselaar <mv...@va...> * Shawn Lawrence <sha...@te...> + * Erik Bunce <kd...@bu...> * * This program is free software, distributed under the terms of * the GNU Lesser (Library) General Public License. Modified: branches/team/elbunce/iaxclient/lib/iaxclient_lib.c =================================================================== --- branches/team/elbunce/iaxclient/lib/iaxclient_lib.c 2007-11-26 22:02:43 UTC (rev 1284) +++ branches/team/elbunce/iaxclient/lib/iaxclient_lib.c 2007-11-28 04:08:06 UTC (rev 1285) @@ -13,6 +13,7 @@ * Mihai Balea <mihai AT hates DOT ms> * Peter Grayson <jpg...@gm...> * Bill Cholewka <bc...@gm...> + * Erik Bunce <kd...@bu...> * * This program is free software, distributed under the terms of * the GNU Lesser (Library) General Public License. Modified: branches/team/elbunce/iaxclient/lib/libiax2/src/iax-client.h =================================================================== --- branches/team/elbunce/iaxclient/lib/libiax2/src/iax-client.h 2007-11-26 22:02:43 UTC (rev 1284) +++ branches/team/elbunce/iaxclient/lib/libiax2/src/iax-client.h 2007-11-28 04:08:06 UTC (rev 1285) @@ -245,6 +245,10 @@ /* Fine tune jitterbuffer */ extern void iax_set_jb_target_extra( long value ); +/* Portable 'decent' random number generation */ +void iax_seed_random(); +int iax_random(); + #if defined(__cplusplus) } #endif Modified: branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c =================================================================== --- branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c 2007-11-26 22:02:43 UTC (rev 1284) +++ branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c 2007-11-28 04:08:06 UTC (rev 1285) @@ -314,9 +314,31 @@ static struct iax_sched *schedq = NULL; static struct iax_session *sessions = NULL; static int callnums = 1; -static int transfer_id = 1; /* for attended transfer */ +void iax_seed_random() +{ +#if defined(HAVE_SRANDOMDEV) + srandomdev(); +#elif defined(HAVE_SRANDOM) + srandom((unsigned int)time(0)); +#elif define(HAVE_SRAND48) + srand48((long int)time(0)); +#else + srand((unsigned int)time(0)); +#endif +} +int iax_random() +{ +#if defined(HAVE_RANDOM) + return (int)random(); +#elif defined(HAVE_LRAND48) + return (int)lrand48(); +#else + return rand(); +#endif +} + void iax_set_private(struct iax_session *s, void *ptr) { s->pvt = ptr; @@ -979,9 +1001,8 @@ DEBU(G "Started on port %d\n", portno); } - srand((unsigned int)time(0)); - callnums = rand() % 32767 + 1; - transfer_id = rand() % 32767 + 1; + iax_seed_random(); + callnums = 1 + (int)(32767.0 * (iax_random() / (RAND_MAX + 1.0))); return portno; } @@ -1373,8 +1394,11 @@ struct iax_session *s1 = new_session; memset(&ied0, 0, sizeof(ied0)); + memset(&ied1, 0, sizeof(ied1)); + int transfer_id = 1 + (int)(32767.0 * (iax_random() / (RAND_MAX + 1.0))); + /* reversed setup */ iax_ie_append_addr(&ied0, IAX_IE_APPARENT_ADDR, &s1->peeraddr); iax_ie_append_short(&ied0, IAX_IE_CALLNO, s1->peercallno); @@ -1399,11 +1423,8 @@ s0->transferpeer = s1->callno; s1->transferpeer = s0->callno; - transfer_id++; + DEBU(G fprintf(stderr, "iax_setup_transfer(%d, %d) transfer_id=%d\n", s0->callno, s1->callno, transfer_id); - if (transfer_id > 32767) - transfer_id = 1; - res = send_command(s0, AST_FRAME_IAX, IAX_COMMAND_TXREQ, 0, ied0.buf, ied0.pos, -1); if (res < 0) { return -1; Modified: branches/team/elbunce/iaxclient/lib/video.c =================================================================== --- branches/team/elbunce/iaxclient/lib/video.c 2007-11-26 22:02:43 UTC (rev 1284) +++ branches/team/elbunce/iaxclient/lib/video.c 2007-11-28 04:08:06 UTC (rev 1285) @@ -9,6 +9,7 @@ * Steve Kann <st...@st...> * Mihai Balea <mihai AT hates DOT ms> * Peter Grayson <jpg...@gm...> + * Erik Bunce <kd...@bu...> * * This program is free software, distributed under the terms of * the GNU Lesser (Library) General Public License. @@ -1789,8 +1790,8 @@ ) == -1 ) { - fprintf(stderr, "Failed to send a slice, call %d, size %d\n", - selected_call, slice_set.size[i]); + fprintf(stderr, "Failed to send a slice, call %d, size %d: %s\n", + selected_call, slice_set.size[i], iax_errstr); return -1; } @@ -1801,8 +1802,8 @@ size, 0, 0) == -1 ) { fprintf(stderr, "iaxc_push_video: failed to send " - "video frame of size %d on call %d\n", - size, selected_call); + "video frame of size %d on call %d: %s\n", + size, selected_call, iax_errstr); return -1; } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <do...@us...> - 2007-11-28 05:30:12
|
Revision: 1287 http://iaxclient.svn.sourceforge.net/iaxclient/?rev=1287&view=rev Author: dohpaz Date: 2007-11-27 21:30:17 -0800 (Tue, 27 Nov 2007) Log Message: ----------- Merge up to trunk of r1286. Modified Paths: -------------- branches/team/elbunce/iaxclient/lib/iaxclient_lib.c branches/team/elbunce/iaxclient/lib/iaxclient_lib.h branches/team/elbunce/iaxclient/lib/portmixer/px_win_wmme/px_win_wmme.c branches/team/elbunce/iaxclient/lib/ringbuffer.c Added Paths: ----------- branches/team/elbunce/iaxclient/contrib/win/vc6/iaxclient.dsw branches/team/elbunce/iaxclient/contrib/win/vc6/libgsm.dsp branches/team/elbunce/iaxclient/contrib/win/vc6/libiax2.dsp branches/team/elbunce/iaxclient/contrib/win/vc6/libiaxclient.dsp branches/team/elbunce/iaxclient/contrib/win/vc6/libogg.dsp branches/team/elbunce/iaxclient/contrib/win/vc6/libportaudio.dsp branches/team/elbunce/iaxclient/contrib/win/vc6/libportmixer.dsp branches/team/elbunce/iaxclient/contrib/win/vc6/libspeex.dsp Removed Paths: ------------- branches/team/elbunce/iaxclient/contrib/win/vc6/all.dsp branches/team/elbunce/iaxclient/contrib/win/vc6/iaxclient_dll.dsp branches/team/elbunce/iaxclient/contrib/win/vc6/iaxclient_lib.dsp branches/team/elbunce/iaxclient/contrib/win/vc6/iaxclient_lib.dsw Deleted: branches/team/elbunce/iaxclient/contrib/win/vc6/all.dsp =================================================================== --- branches/team/elbunce/iaxclient/contrib/win/vc6/all.dsp 2007-11-28 05:19:17 UTC (rev 1286) +++ branches/team/elbunce/iaxclient/contrib/win/vc6/all.dsp 2007-11-28 05:30:17 UTC (rev 1287) @@ -1,63 +0,0 @@ -# Microsoft Developer Studio Project File - Name="all" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Generic Project" 0x010a - -CFG=all - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "all.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "all.mak" CFG="all - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "all - Win32 Release" (based on "Win32 (x86) Generic Project") -!MESSAGE "all - Win32 Debug" (based on "Win32 (x86) Generic Project") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -MTL=midl.exe - -!IF "$(CFG)" == "all - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Target_Dir "" - -!ELSEIF "$(CFG)" == "all - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Target_Dir "" - -!ENDIF - -# Begin Target - -# Name "all - Win32 Release" -# Name "all - Win32 Debug" -# End Target -# End Project Copied: branches/team/elbunce/iaxclient/contrib/win/vc6/iaxclient.dsw (from rev 1286, trunk/contrib/win/vc6/iaxclient.dsw) =================================================================== --- branches/team/elbunce/iaxclient/contrib/win/vc6/iaxclient.dsw (rev 0) +++ branches/team/elbunce/iaxclient/contrib/win/vc6/iaxclient.dsw 2007-11-28 05:30:17 UTC (rev 1287) @@ -0,0 +1,147 @@ +Microsoft Developer Studio Workspace File, Format Version 6.00 +# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! + +############################################################################### + +Project: "libgsm"=.\libgsm.dsp - Package Owner=<4> + +Package=<5> +{{{ + begin source code control + Perforce Project + . + end source code control +}}} + +Package=<4> +{{{ +}}} + +############################################################################### + +Project: "libiax2"=.\libiax2.dsp - Package Owner=<4> + +Package=<5> +{{{ + begin source code control + libiax2 + ..\..\..\.. + end source code control +}}} + +Package=<4> +{{{ +}}} + +############################################################################### + +Project: "libiaxclient"=.\libiaxclient.dsp - Package Owner=<4> + +Package=<5> +{{{ + begin source code control + Perforce Project + . + end source code control +}}} + +Package=<4> +{{{ + Begin Project Dependency + Project_Dep_Name libgsm + End Project Dependency + Begin Project Dependency + Project_Dep_Name libiax2 + End Project Dependency + Begin Project Dependency + Project_Dep_Name libogg + End Project Dependency + Begin Project Dependency + Project_Dep_Name libportaudio + End Project Dependency + Begin Project Dependency + Project_Dep_Name libportmixer + End Project Dependency + Begin Project Dependency + Project_Dep_Name libspeex + End Project Dependency +}}} + +############################################################################### + +Project: "libogg"=.\libogg.dsp - Package Owner=<4> + +Package=<5> +{{{ + begin source code control + libogg + ..\..\..\..\.. + end source code control +}}} + +Package=<4> +{{{ +}}} + +############################################################################### + +Project: "libportaudio"=.\libportaudio.dsp - Package Owner=<4> + +Package=<5> +{{{ + begin source code control + libportaudio + ..\..\..\..\.. + end source code control +}}} + +Package=<4> +{{{ +}}} + +############################################################################### + +Project: "libportmixer"=.\libportmixer.dsp - Package Owner=<4> + +Package=<5> +{{{ + begin source code control + libportmixer + ..\..\..\.. + end source code control +}}} + +Package=<4> +{{{ +}}} + +############################################################################### + +Project: "libspeex"=.\libspeex.dsp - Package Owner=<4> + +Package=<5> +{{{ + begin source code control + libspeex + ..\..\..\..\.. + end source code control +}}} + +Package=<4> +{{{ +}}} + +############################################################################### + +Global: + +Package=<5> +{{{ +}}} + +Package=<3> +{{{ +}}} + +############################################################################### + Deleted: branches/team/elbunce/iaxclient/contrib/win/vc6/iaxclient_dll.dsp =================================================================== --- branches/team/elbunce/iaxclient/contrib/win/vc6/iaxclient_dll.dsp 2007-11-28 05:19:17 UTC (rev 1286) +++ branches/team/elbunce/iaxclient/contrib/win/vc6/iaxclient_dll.dsp 2007-11-28 05:30:17 UTC (rev 1287) @@ -1,699 +0,0 @@ -# Microsoft Developer Studio Project File - Name="iaxclient_dll" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102 - -CFG=iaxclient_dll - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "iaxclient_dll.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "iaxclient_dll.mak" CFG="iaxclient_dll - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "iaxclient_dll - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE "iaxclient_dll - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -MTL=midl.exe -RSC=rc.exe - -!IF "$(CFG)" == "iaxclient_dll - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "ReleaseDLL" -# PROP Intermediate_Dir "ReleaseDLL" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_USRDLL" /D "_WINDLL" /YX /FD /c -# ADD CPP /nologo /Gz /MD /w /W0 /GX /I ".." /I "..\..\gsm\inc" /I "..\..\portaudio\include" /I "..\..\portaudio\src\common" /I "..\..\portaudio\pablio" /I "..\..\portmixer\px_common" /I "..\..\libspeex\include" /I "..\..\libiax2\src" /I "..\..\wince" /D "WIN32" /D "NDEBUG" /D "_USRDLL" /D "_WINDLL" /D "PA_NO_DS" /D "PA_NO_ASIO" /D SPEEX_PREPROCESS=1 /D "NEWJB" /D "LIBIAX" /D SPEEX_EC=1 /D inline=__inline /D strncasecmp=strnicmp /D vsnprintf=_vsnprintf /FD /c -# SUBTRACT CPP /X /Fr /YX -# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32 -# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32 -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386 -# ADD LINK32 wsock32.lib winmm.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386 /out:"ReleaseDLL/iaxclient.dll" - -!ELSEIF "$(CFG)" == "iaxclient_dll - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "DebugDLL" -# PROP Intermediate_Dir "DebugDLL" -# PROP Ignore_Export_Lib 0 -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_USRDLL" /D "_WINDLL" /YX /FD /GZ /c -# ADD CPP /nologo /Gz /MDd /w /W0 /Gm /GX /Zi /Od /I ".." /I "..\..\gsm\inc" /I "..\..\portaudio\include" /I "..\..\portaudio\src\common" /I "..\..\portaudio\pablio" /I "..\..\portmixer\px_common" /I "..\..\libspeex\include" /I "..\..\libiax2\src" /I "..\..\wince" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "_WINDLL" /D "BUILDING_DLL" /D "PA_NO_DS" /D "PA_NO_ASIO" /D SPEEX_PREPROCESS=1 /D "NEWJB" /D "LIBIAX" /D SPEEX_EC=1 /D inline=__inline /D strncasecmp=strnicmp /D vsnprintf=_vsnprintf /FD /GZ /c -# SUBTRACT CPP /Fr /YX -# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32 -# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32 -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LINK32=link.exe -# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept -# ADD LINK32 msvcrt.lib wsock32.lib winmm.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /map /debug /machine:I386 /out:"DebugDLL/iaxclient.dll" - -!ENDIF - -# Begin Target - -# Name "iaxclient_dll - Win32 Release" -# Name "iaxclient_dll - Win32 Debug" -# Begin Group "Source Files" - -# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat" -# Begin Source File - -SOURCE=..\..\audio_encode.c -# End Source File -# Begin Source File - -SOURCE=..\..\audio_file.c -# End Source File -# Begin Source File - -SOURCE=..\..\audio_portaudio.c -# End Source File -# Begin Source File - -SOURCE=..\..\codec_alaw.c -# End Source File -# Begin Source File - -SOURCE=..\..\codec_gsm.c -# End Source File -# Begin Source File - -SOURCE=..\..\codec_speex.c -# End Source File -# Begin Source File - -SOURCE=..\..\codec_ulaw.c -# End Source File -# Begin Source File - -SOURCE=..\..\libiax2\src\iax.c -# End Source File -# Begin Source File - -SOURCE="..\..\libiax2\src\iax2-parser.c" -# End Source File -# Begin Source File - -SOURCE=..\iaxclient_dll.c -# End Source File -# Begin Source File - -SOURCE=..\..\iaxclient_lib.c -# End Source File -# Begin Source File - -SOURCE=..\..\libiax2\src\jitterbuf.c -# End Source File -# Begin Source File - -SOURCE=..\..\libiax2\src\md5.c -# End Source File -# Begin Source File - -SOURCE=..\..\winfuncs.c -# End Source File -# End Group -# Begin Group "Header Files" - -# PROP Default_Filter "h;hpp;hxx;hm;inl" -# Begin Source File - -SOURCE=..\..\audio_encode.h -# End Source File -# Begin Source File - -SOURCE=..\..\audio_file.h -# End Source File -# Begin Source File - -SOURCE=..\..\audio_portaudio.h -# End Source File -# Begin Source File - -SOURCE=..\..\codec_alaw.h -# End Source File -# Begin Source File - -SOURCE=..\..\codec_gsm.h -# End Source File -# Begin Source File - -SOURCE=..\..\codec_speex.h -# End Source File -# Begin Source File - -SOURCE=..\..\codec_ulaw.h -# End Source File -# Begin Source File - -SOURCE=..\..\libiax2\src\iax.h -# End Source File -# Begin Source File - -SOURCE="..\..\libiax2\src\iax2-parser.h" -# End Source File -# Begin Source File - -SOURCE=..\..\iaxclient.h -# End Source File -# Begin Source File - -SOURCE=..\..\iaxclient_lib.h -# End Source File -# Begin Source File - -SOURCE=..\..\libiax2\src\jitterbuf.h -# End Source File -# Begin Source File - -SOURCE=..\..\libiax2\src\md5.h -# End Source File -# End Group -# Begin Group "DSP" - -# PROP Default_Filter "" -# Begin Source File - -SOURCE=..\..\spandsp\plc.c -# End Source File -# Begin Source File - -SOURCE=..\..\spandsp\plc.h -# End Source File -# End Group -# Begin Group "GSM" - -# PROP Default_Filter "" -# Begin Source File - -SOURCE=..\..\gsm\src\add.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\code.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\inc\config.h -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\debug.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\decode.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\inc\gsm.h -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\gsm_create.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\gsm_decode.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\gsm_destroy.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\gsm_encode.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\gsm_explode.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\gsm_implode.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\gsm_option.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\gsm_print.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\k6opt.h -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\long_term.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\lpc.c - -!IF "$(CFG)" == "iaxclient_dll - Win32 Release" - -# PROP Intermediate_Dir "ReleaseDLL\gsm" - -!ELSEIF "$(CFG)" == "iaxclient_dll - Win32 Debug" - -# PROP Intermediate_Dir "DebugDLL\gsm" - -!ENDIF - -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\preprocess.c - -!IF "$(CFG)" == "iaxclient_dll - Win32 Release" - -# PROP Intermediate_Dir "ReleaseDLL\gsm" - -!ELSEIF "$(CFG)" == "iaxclient_dll - Win32 Debug" - -# PROP Intermediate_Dir "DebugDLL\gsm" - -!ENDIF - -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\inc\private.h -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\inc\proto.h -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\rpe.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\short_term.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\table.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\inc\unproto.h -# End Source File -# End Group -# Begin Group "PortAudio" - -# PROP Default_Filter "" -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_allocation.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_allocation.h -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_converters.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_converters.h -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_cpuload.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_cpuload.h -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_dither.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_dither.h -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_endianness.h -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_front.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_hostapi.h -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_process.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_process.h -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_skeleton.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_stream.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_stream.h -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_trace.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_trace.h -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_types.h -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_util.h -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\os\win\pa_win_hostapis.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\os\win\pa_win_util.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\hostapi\wmme\pa_win_wmme.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\pablio\ringbuffer.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\pablio\ringbuffer.h -# End Source File -# End Group -# Begin Group "PortMixer" - -# PROP Default_Filter "" -# Begin Source File - -SOURCE=..\..\portmixer\px_win_wmme\px_win_wmme.cpp -# End Source File -# End Group -# Begin Group "Speex" - -# PROP Default_Filter "" -# Begin Source File - -SOURCE=..\..\libspeex\arch.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\bits.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\cb_search.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\cb_search.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\cb_search_sse.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\exc_10_16_table.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\exc_10_32_table.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\exc_20_32_table.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\exc_5_256_table.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\exc_5_64_table.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\exc_8_128_table.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\filters.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\filters.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\filters_arm4.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\filters_sse.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\fixed_debug.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\fixed_generic.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\gain_table.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\gain_table_lbr.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\hexc_10_32_table.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\hexc_table.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\high_lsp_tables.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\jitter.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\lbr_48k_tables.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\lpc.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\lpc.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\lsp.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\lsp.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\lsp_tables_nb.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\ltp.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\ltp.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\ltp_sse.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\math_approx.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\math_approx.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\mdf.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\medfilter.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\medfilter.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\misc.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\misc.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\modes.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\modes.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\nb_celp.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\nb_celp.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\preprocess.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\quant_lsp.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\quant_lsp.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\sb_celp.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\sb_celp.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\smallft.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\smallft.h -# End Source File -# Begin Source File - -SOURCE=..\..\sox\sox.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\speex.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\speex_callbacks.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\speex_header.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\stack_alloc.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\stereo.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\vbr.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\vbr.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\vq.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\vq.h -# End Source File -# End Group -# End Target -# End Project Deleted: branches/team/elbunce/iaxclient/contrib/win/vc6/iaxclient_lib.dsp =================================================================== --- branches/team/elbunce/iaxclient/contrib/win/vc6/iaxclient_lib.dsp 2007-11-28 05:19:17 UTC (rev 1286) +++ branches/team/elbunce/iaxclient/contrib/win/vc6/iaxclient_lib.dsp 2007-11-28 05:30:17 UTC (rev 1287) @@ -1,688 +0,0 @@ -# Microsoft Developer Studio Project File - Name="iaxclient_lib" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Static Library" 0x0104 - -CFG=iaxclient_lib - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "iaxclient_lib.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "iaxclient_lib.mak" CFG="iaxclient_lib - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "iaxclient_lib - Win32 Release" (based on "Win32 (x86) Static Library") -!MESSAGE "iaxclient_lib - Win32 Debug" (based on "Win32 (x86) Static Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "iaxclient_lib - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "ReleaseLIB" -# PROP Intermediate_Dir "ReleaseLIB" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c -# ADD CPP /nologo /Gz /MD /w /W0 /GX /I ".." /I "..\..\gsm\inc" /I "..\..\portaudio\include" /I "..\..\portaudio\src\common" /I "..\..\portaudio\pablio" /I "..\..\portmixer\px_common" /I "..\..\libspeex\include" /I "..\..\libiax2\src" /I "..\..\wince" /D "WIN32" /D "NDEBUG" /D "_LIB" /D "PA_NO_DS" /D "PA_NO_ASIO" /D SPEEX_PREPROCESS=1 /D "NEWJB" /D "LIBIAX" /D SPEEX_EC=1 /D inline=__inline /D strncasecmp=strnicmp /D vsnprintf=_vsnprintf /FD /c -# SUBTRACT CPP /X /Fr /YX -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo -# ADD LIB32 /nologo /out:"ReleaseLIB\iaxclient1.lib" - -!ELSEIF "$(CFG)" == "iaxclient_lib - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "DebugLIB" -# PROP Intermediate_Dir "DebugLIB" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c -# ADD CPP /nologo /Gz /MDd /w /W0 /Gm /GX /Zi /Od /I ".." /I "..\..\gsm\inc" /I "..\..\portaudio\include" /I "..\..\portaudio\src\common" /I "..\..\portaudio\pablio" /I "..\..\portmixer\px_common" /I "..\..\libspeex\include" /I "..\..\libiax2\src" /I "..\..\wince" /D "WIN32" /D "_DEBUG" /D "_LIB" /D "PA_NO_DS" /D "PA_NO_ASIO" /D SPEEX_PREPROCESS=1 /D "NEWJB" /D "LIBIAX" /D SPEEX_EC=1 /D inline=__inline /D strncasecmp=strnicmp /D vsnprintf=_vsnprintf /FD /GZ /c -# SUBTRACT CPP /Fr /YX -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo -# ADD LIB32 /nologo /out:"DebugLIB\iaxclient1.lib" - -!ENDIF - -# Begin Target - -# Name "iaxclient_lib - Win32 Release" -# Name "iaxclient_lib - Win32 Debug" -# Begin Group "Source Files" - -# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat" -# Begin Source File - -SOURCE=..\..\audio_encode.c -# End Source File -# Begin Source File - -SOURCE=..\..\audio_file.c -# End Source File -# Begin Source File - -SOURCE=..\..\audio_portaudio.c -# End Source File -# Begin Source File - -SOURCE=..\..\codec_alaw.c -# End Source File -# Begin Source File - -SOURCE=..\..\codec_gsm.c -# End Source File -# Begin Source File - -SOURCE=..\..\codec_speex.c -# End Source File -# Begin Source File - -SOURCE=..\..\codec_ulaw.c -# End Source File -# Begin Source File - -SOURCE=..\..\libiax2\src\iax.c -# End Source File -# Begin Source File - -SOURCE="..\..\libiax2\src\iax2-parser.c" -# End Source File -# Begin Source File - -SOURCE=..\..\iaxclient_lib.c -# End Source File -# Begin Source File - -SOURCE=..\..\libiax2\src\jitterbuf.c -# End Source File -# Begin Source File - -SOURCE=..\..\libiax2\src\md5.c -# End Source File -# Begin Source File - -SOURCE=..\..\winfuncs.c -# End Source File -# End Group -# Begin Group "Header Files" - -# PROP Default_Filter "h;hpp;hxx;hm;inl" -# Begin Source File - -SOURCE=..\..\audio_encode.h -# End Source File -# Begin Source File - -SOURCE=..\..\audio_file.h -# End Source File -# Begin Source File - -SOURCE=..\..\audio_portaudio.h -# End Source File -# Begin Source File - -SOURCE=..\..\codec_alaw.h -# End Source File -# Begin Source File - -SOURCE=..\..\codec_gsm.h -# End Source File -# Begin Source File - -SOURCE=..\..\codec_speex.h -# End Source File -# Begin Source File - -SOURCE=..\..\codec_ulaw.h -# End Source File -# Begin Source File - -SOURCE=..\..\libiax2\src\iax.h -# End Source File -# Begin Source File - -SOURCE="..\..\libiax2\src\iax2-parser.h" -# End Source File -# Begin Source File - -SOURCE=..\..\iaxclient.h -# End Source File -# Begin Source File - -SOURCE=..\..\iaxclient_lib.h -# End Source File -# Begin Source File - -SOURCE=..\..\libiax2\src\jitterbuf.h -# End Source File -# Begin Source File - -SOURCE=..\..\libiax2\src\md5.h -# End Source File -# End Group -# Begin Group "DSP" - -# PROP Default_Filter "" -# Begin Source File - -SOURCE=..\..\spandsp\plc.c -# End Source File -# Begin Source File - -SOURCE=..\..\spandsp\plc.h -# End Source File -# End Group -# Begin Group "GSM" - -# PROP Default_Filter "" -# Begin Source File - -SOURCE=..\..\gsm\src\add.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\code.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\inc\config.h -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\debug.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\decode.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\inc\gsm.h -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\gsm_create.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\gsm_decode.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\gsm_destroy.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\gsm_encode.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\gsm_explode.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\gsm_implode.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\gsm_option.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\gsm_print.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\k6opt.h -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\long_term.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\lpc.c - -!IF "$(CFG)" == "iaxclient_lib - Win32 Release" - -# PROP Intermediate_Dir "ReleaseLIB\gsm" - -!ELSEIF "$(CFG)" == "iaxclient_lib - Win32 Debug" - -# PROP Intermediate_Dir "DebugLIB\gsm" - -!ENDIF - -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\preprocess.c - -!IF "$(CFG)" == "iaxclient_lib - Win32 Release" - -# PROP Intermediate_Dir "ReleaseLIB\gsm" - -!ELSEIF "$(CFG)" == "iaxclient_lib - Win32 Debug" - -# PROP Intermediate_Dir "DebugLIB\gsm" - -!ENDIF - -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\inc\private.h -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\inc\proto.h -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\rpe.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\short_term.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\src\table.c -# End Source File -# Begin Source File - -SOURCE=..\..\gsm\inc\unproto.h -# End Source File -# End Group -# Begin Group "PortAudio" - -# PROP Default_Filter "" -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_allocation.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_allocation.h -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_converters.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_converters.h -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_cpuload.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_cpuload.h -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_dither.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_dither.h -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_endianness.h -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_front.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_hostapi.h -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_process.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_process.h -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_skeleton.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_stream.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_stream.h -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_trace.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_trace.h -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_types.h -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\common\pa_util.h -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\os\win\pa_win_hostapis.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\os\win\pa_win_util.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\src\hostapi\wmme\pa_win_wmme.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\pablio\ringbuffer.c -# End Source File -# Begin Source File - -SOURCE=..\..\portaudio\pablio\ringbuffer.h -# End Source File -# End Group -# Begin Group "PortMixer" - -# PROP Default_Filter "" -# Begin Source File - -SOURCE=..\..\portmixer\px_win_wmme\px_win_wmme.cpp -# End Source File -# End Group -# Begin Group "Speex" - -# PROP Default_Filter "" -# Begin Source File - -SOURCE=..\..\libspeex\arch.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\bits.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\cb_search.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\cb_search.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\cb_search_sse.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\exc_10_16_table.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\exc_10_32_table.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\exc_20_32_table.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\exc_5_256_table.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\exc_5_64_table.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\exc_8_128_table.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\filters.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\filters.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\filters_arm4.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\filters_sse.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\fixed_debug.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\fixed_generic.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\gain_table.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\gain_table_lbr.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\hexc_10_32_table.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\hexc_table.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\high_lsp_tables.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\jitter.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\lbr_48k_tables.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\lpc.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\lpc.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\lsp.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\lsp.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\lsp_tables_nb.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\ltp.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\ltp.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\ltp_sse.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\math_approx.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\math_approx.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\mdf.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\medfilter.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\medfilter.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\misc.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\misc.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\modes.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\modes.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\nb_celp.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\nb_celp.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\preprocess.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\quant_lsp.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\quant_lsp.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\sb_celp.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\sb_celp.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\smallft.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\smallft.h -# End Source File -# Begin Source File - -SOURCE=..\..\sox\sox.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\speex.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\speex_callbacks.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\speex_header.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\stack_alloc.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\stereo.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\vbr.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\vbr.h -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\vq.c -# End Source File -# Begin Source File - -SOURCE=..\..\libspeex\vq.h -# End Source File -# End Group -# End Target -# End Project Deleted: branches/team/elbunce/iaxclient/contrib/win/vc6/iaxclient_lib.dsw =================================================================== --- branches/team/elbunce/iaxclient/contrib/win/vc6/iaxclient_lib.dsw 2007-11-28 05:19:17 UTC (rev 1286) +++ branches/team/elbunce/iaxclient/contrib/win/vc6/iaxclient_lib.dsw 2007-11-28 05:30:17 UTC (rev 1287) @@ -1,59 +0,0 @@ -Microsoft Developer Studio Workspace File, Format Version 6.00 -# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! - -############################################################################### - -Project: "all"=.\all.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ - Begin Project Dependency - Project_Dep_Name iaxclient_dll - End Project Dependency - Begin Project Dependency - Project_Dep_Name iaxclient_lib - End Project Dependency -}}} - -############################################################################### - -Project: "iaxclient_dll"=.\iaxclient_dll.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ -}}} - -############################################################################### - -Project: "iaxclient_lib"=.\iaxclient_lib.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ -}}} - -############################################################################### - -Global: - -Package=<5> -{{{ -}}} - -Package=<3> -{{{ -}}} - -############################################################################### - Copied: branches/team/elbunce/iaxclient/contrib/win/vc6/libgsm.dsp (from rev 1286, trunk/contrib/win/vc6/libgsm.dsp) =================================================================== --- branches/team/elbunce/iaxclient/contrib/win/vc6/libgsm.dsp (rev 0) +++ branches/team/elbunce/iaxclient/contrib/win/vc6/libgsm.dsp 2007-11-28 05:30:17 UTC (rev 1287) @@ -0,0 +1,186 @@ +# Microsoft Developer Studio Project File - Name="libgsm" - Package Owner=<4> +# Microsoft Developer Studio Generated Build File, Format Version 6.00 +# ** DO NOT EDIT ** + +# TARGTYPE "Win32 (x86) Static Library" 0x0104 + +CFG=libgsm - Win32 Debug +!MESSAGE This is not a valid makefile. To build this project using NMAKE, +!MESSAGE use the Export Makefile command and run +!MESSAGE +!MESSAGE NMAKE /f "libgsm.mak". +!MESSAGE +!MESSAGE You can specify a configuration when running NMAKE +!MESSAGE by defining the macro CFG on the command line. For example: +!MESSAGE +!MESSAGE NMAKE /f "libgsm.mak" CFG="libgsm - Win32 Debug" +!MESSAGE +!MESSAGE Possible choices for configuration are: +!MESSAGE +!MESSAGE "libgsm - Win32 Release" (based on "Win32 (x86) Static Library") +!MESSAGE "libgsm - Win32 Debug" (based on "Win32 (x86) Static Library") +!MESSAGE + +# Begin Project +# PROP AllowPerConfigDependencies 0 +# PROP Scc_ProjName "Perforce Project" +# PROP Scc_LocalPath "." +CPP=cl.exe +RSC=rc.exe + +!IF "$(CFG)" == "libgsm - Win32 Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "i386rel" +# PROP BASE Intermediate_Dir "i386rel" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release" +# PROP Intermediate_Dir "Release\libgsm" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c +# ADD CPP /nologo /MD /w /W0 /GX /I "..\..\..\lib\gsm\inc" /D "WIN32" /D "NDEBUG" /D "_LIB" /FD /c +# SUBTRACT CPP /Fr /YX +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo +# ADD LIB32 /nologo + +!ELSEIF "$(CFG)" == "libgsm - Win32 Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "i386dbg" +# PROP BASE Intermediate_Dir "i386dbg" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug" +# PROP Intermediate_Dir "Debug\libgsm" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c +# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "..\..\..\lib\gsm\inc" /D "WIN32" /D "_DEBUG" /D "_LIB" /Fr /FD /GZ /c +# SUBTRACT CPP /YX +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo +# ADD LIB32 /nologo + +!ENDIF + +# Begin Target + +# Name "libgsm - Win32 Release" +# Name "libgsm - Win32 Debug" +# Begin Group "Source Files" + +# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat" +# Begin Source File + +SOURCE=..\..\..\lib\gsm\src\add.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\gsm\src\code.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\gsm\src\debug.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\gsm\src\decode.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\gsm\src\gsm_create.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\gsm\src\gsm_decode.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\gsm\src\gsm_destroy.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\gsm\src\gsm_encode.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\gsm\src\gsm_explode.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\gsm\src\gsm_implode.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\gsm\src\gsm_option.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\gsm\src\gsm_print.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\gsm\src\long_term.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\gsm\src\lpc.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\gsm\src\preprocess.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\gsm\src\rpe.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\gsm\src\short_term.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\gsm\src\table.c +# End Source File +# End Group +# Begin Group "Header Files" + +# PROP Default_Filter "h;hpp;hxx;hm;inl" +# Begin Source File + +SOURCE=..\..\..\lib\gsm\inc\config.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\gsm\inc\gsm.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\gsm\inc\private.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\gsm\inc\proto.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\gsm\inc\unproto.h +# End Source File +# End Group +# End Target +# End Project Copied: branches/team/elbunce/iaxclient/contrib/win/vc6/libiax2.dsp (from rev 1286, trunk/contrib/win/vc6/libiax2.dsp) =================================================================== --- branches/team/elbunce/iaxclient/contrib/win/vc6/libiax2.dsp (rev 0) +++ branches/team/elbunce/iaxclient/contrib/win/vc6/libiax2.dsp 2007-11-28 05:30:17 UTC (rev 1287) @@ -0,0 +1,168 @@ +# Microsoft Developer Studio Project File - Name="libiax2" - Package Owner=<4> +# Microsoft Developer Studio Generated Build File, Format Version 6.00 +# ** DO NOT EDIT ** + +# TARGTYPE "Win32 (x86) Static Library" 0x0104 + +CFG=libiax2 - Win32 Debug +!MESSAGE This is not a valid makefile. To build this project using NMAKE, +!MESSAGE use the Export Makefile command and run +!MESSAGE +!MESSAGE NMAKE /f "libiax2.mak". +!MESSAGE +!MESSAGE You can specify a configuration when running NMAKE +!MESSAGE by defining the macro CFG on the command line. For example: +!MESSAGE +!MESSAGE NMAKE /f "libiax2.mak" CFG="libiax2 - Win32 Debug" +!MESSAGE +!MESSAGE Possible choices for configuration are: +!MESSAGE +!MESSAGE "libiax2 - Win32 Release" (based on "Win32 (x86) Static Library") +!MESSAGE "libiax2 - Win32 Debug" (based on "Win32 (x86) Static Library") +!MESSAGE + +# Begin Project +# PROP AllowPerConfigDependencies 0 +# PROP Scc_ProjName "libiax2" +# PROP Scc_LocalPath "..\..\..\.." +CPP=cl.exe +RSC=rc.exe + +!IF "$(CFG)" == "libiax2 - Win32 Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release" +# PROP BASE Intermediate_Dir "Release" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release" +# PROP Intermediate_Dir "Release\libiax2" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c +# ADD CPP /nologo /MD /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_LIB" /D "LIBIAX" /D "_CRT_SECURE_NO_DEPRECATE" /YX /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo +# ADD LIB32 /nologo + +!ELSEIF "$(CFG)" == "libiax2 - Win32 Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug" +# PROP BASE Intermediate_Dir "Debug" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug" +# PROP Intermediate_Dir "Debug\libiax2" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c +# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_LIB" /D "LIBIAX" /D "_CRT_SECURE_NO_DEPRECATE" /D NTDDI_VERSION=NTDDI_WIN2KSP4 /FR /YX /FD /GZ /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo +# ADD LIB32 /nologo + +!ENDIF + +# Begin Target + +# Name "libiax2 - Win32 Release" +# Name "libiax2 - Win32 Debug" +# Begin Group "Source Files" + +# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat" +# Begin Source File + +SOURCE=..\..\..\lib\libiax2\src\iax.c +# End Source File +# Begin Source File + +SOURCE="..\..\..\lib\libiax2\src\iax2-parser.c" +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\libiax2\src\jitterbuf.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\libiax2\src\md5.c +# End Source File +# End Group +# Begin Group "Header Files" + +# PROP Default_Filter "h;hpp;hxx;hm;inl" +# Begin Source File + +SOURCE=..\..\..\lib\libiax2\src\answer.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\libiax2\src\busy.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\libiax2\src\dialtone.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\libiax2\src\frame.h +# End Source File +# Begin Source File + +SOURCE="..\..\..\lib\libiax2\src\iax-client.h" +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\libiax2\src\iax.h +# End Source File +# Begin Source File + +SOURCE="..\..\..\lib\libiax2\src\iax2-parser.h" +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\libiax2\src\iax2.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\libiax2\src\jitterbuf.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\libiax2\src\md5.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\libiax2\src\miniphone.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\libiax2\src\options.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\libiax2\src\ring10.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\libiax2\src\ringtone.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\libiax2\src\winpoop.h +# End Source File +# End Group +# End Target +# End Project Copied: branches/team/elbunce/iaxclient/contrib/win/vc6/libiaxclient.dsp (from rev 1286, trunk/contrib/win/vc6/libiaxclient.dsp) =================================================================== --- branches/team/elbunce/iaxclient/contrib/win/vc6/libiaxclient.dsp (rev 0) +++ branches/team/elbunce/iaxclient/contrib/win/vc6/libiaxclient.dsp 2007-11-28 05:30:17 UTC (rev 1287) @@ -0,0 +1,178 @@ +# Microsoft Developer Studio Project File - Name="libiaxclient" - Package Owner=<4> +# Microsoft Developer Studio Generated Build File, Format Version 6.00 +# ** DO NOT EDIT ** + +# TARGTYPE "Win32 (x86) Static Library" 0x0104 + +CFG=libiaxclient - Win32 Debug +!MESSAGE This is not a valid makefile. To build this project using NMAKE, +!MESSAGE use the Export Makefile command and run +!MESSAGE +!MESSAGE NMAKE /f "libiaxclient.mak". +!MESSAGE +!MESSAGE You can specify a configuration when running NMAKE +!MESSAGE by defining the macro CFG on the command line. For example: +!MESSAGE +!MESSAGE NMAKE /f "libiaxclient.mak" CFG="libiaxclient - Win32 Debug" +!MESSAGE +!MESSAGE Possible choices for configuration are: +!MESSAGE +!MESSAGE "libiaxclient - Win32 Release" (based on "Win32 (x86) Static Library") +!MESSAGE "libiaxclient - Win32 Debug" (based on "Win32 (x86) Static Library") +!MESSAGE + +# Begin Project +# PROP AllowPerConfigDependencies 0 +# PROP Scc_ProjName "Perforce Project" +# PROP Scc_LocalPath "." +CPP=cl.exe +RSC=rc.exe + +!IF "$(CFG)" == "libiaxclient - Win32 Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "i386rel" +# PROP BASE Intermediate_Dir "i386rel" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release" +# PROP Intermediate_Dir "Release\libiaxclient" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c +# ADD CPP /nologo /MD /w /W0 /GX /I "..\..\..\lib\libiax2\src" /I "..\..\..\..\portaudio\include" /I "..\..\..\lib\spandsp" /I "..\..\..\lib\gsm\inc" /I "..\..\..\..\speex\include" /I "..\..\..\..\libogg\include" /I "..\..\..\lib\portmixer\px_common" /D "NDEBUG" /D "WIN32" /D "_LIB" /D "PA_NO_DS" /D "PA_NO_ASIO" /D "BUILDING_DLL" /D "LIBIAX" /D SPEEX_EC=1 /D "ALLOW_SMP_DANGERS" /D "_CRT_SECURE_NO_DEPRECATE" /D log10f=log10 /D vsnprintf=_vsnprintf /D strncasecmp=strnicmp /D __inline__=_inline /D inline=__inline /FD /c +# SUBTRACT CPP /Fr /YX +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo +# ADD LIB32 /nologo + +!ELSEIF "$(CFG)" == "libiaxclient - Win32 Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "i386dbg" +# PROP BASE Intermediate_Dir "i386dbg" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug" +# PROP Intermediate_Dir "Debug\libiaxclient" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c +# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "..\..\..\lib\libiax2\src" /I "..\..\..\..\portaudio\include" /I "..\..\..\lib\spandsp" /I "..\..\..\lib\gsm\inc" /I "..\..\..\..\speex\include" /I "..\..\..\..\libogg\include" /I "..\..\..\lib\portmixer\px_common" /D "_DEBUG" /D "WIN32" /D "_LIB" /D "PA_NO_DS" /D "PA_NO_ASIO" /D "BUILDING_DLL" /D "LIBIAX" /D SPEEX_EC=1 /D "ALLOW_SMP_DANGERS" /D "_CRT_SECURE_NO_DEPRECATE" /D log10f=log10 /D vsnprintf=_vsnprintf /D strncasecmp=strnicmp /D __inline__=_inline /D inline=__inline /Fr /FD /GZ /c +# SUBTRACT CPP /YX +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo +# ADD LIB32 /nologo + +!ENDIF + +# Begin Target + +# Name "libiaxclient - Win32 Release" +# Name "libiaxclient - Win32 Debug" +# Begin Group "Source Files" + +# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat" +# Begin Source File + +SOURCE=..\..\..\lib\audio_encode.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\audio_portaudio.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\codec_alaw.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\codec_gsm.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\codec_speex.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\codec_ulaw.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\iaxclient_lib.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\spandsp\plc.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\ringbuffer.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\winfuncs.c +# End Source File +# End Group +# Begin Group "Header Files" + +# PROP Default_Filter "h;hpp;hxx;hm;inl" +# Begin Source File + +SOURCE=..\..\..\lib\audio_alsa.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\audio_portaudio.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\codec_alaw.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\codec_ffmpeg.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\codec_gsm.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\codec_ilbc.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\codec_speex.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\codec_ulaw.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\iaxclient.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\iaxclient_lib.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\lib\ringbuffer.h +# End Source File +# End Group +# End Target +# End Project Copied: branches/team/elbunce/iaxclient/contrib/win/vc6/libogg.dsp (from rev 1286, trunk/contrib/win/vc6/libogg.dsp) =================================================================== --- branches/team/elbunce/iaxclient/contrib/win/vc6/libogg.dsp (rev 0) +++ branches/team/elbunce/iaxclient/contrib/win/vc6/libogg.dsp 2007-11-28 05:30:17 UTC (rev 1287) @@ -0,0 +1,108 @@ +# Microsoft Developer Studio Project File - Name="libogg" - Package Owner=<4> +# Microsoft Developer Studio Generated Build File, Format Version 6.00 +# ** DO NOT EDIT ** + +# TARGTYPE "Win32 (x86) Static Library" 0x0104 + +CFG=libogg - Win32 Debug +!MESSAGE This is not a valid makefile. To build this project using NMAKE, +!MESSAGE use the Export Makefile command and run +!MESSAGE +!MESSAGE NMAKE /f "libogg.mak". +!MESSAGE +!MESSAGE You can specify a configuration when running NMAKE +!MESSAGE by defining the macro CFG on the command line. For example: +!MESSAGE +!MESSAGE NMAKE /f "libogg.mak" CFG="libogg - Win32 Debug" +!MESSAGE +!MESSAGE Possible choices for configuration are: +!MESSAGE +!MESSAGE "libogg - Win32 Release" (based on "Win32 (x86) Static Library") +!MESSAGE "libogg - Win32 Debug" (based on "Win32 (x86) Static Library") +!MESSAGE + +# Begin Project +# PROP AllowPerConfigDependencies 0 +# PROP Scc_ProjName "libogg" +# PROP Scc_LocalPath "..\..\..\..\.." +CPP=cl.exe +RSC=rc.exe + +!IF "$(CFG)" == "libogg - Win32 Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release" +# PROP BASE Intermediate_Dir "Release" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release" +# PROP Intermediate_Dir "Release\libogg" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c +# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\..\..\..\libogg\include" /D "WIN32" /D "NDEBUG" /D "_LIB" /YX /FD /c +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo +# ADD LIB32 /nologo + +!ELSEIF "$(CFG)" == "libogg - Win32 Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "Debug" +# PROP BASE Intermediate_Dir "Debug" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "Debug" +# PROP Intermediate_Dir "Debug\libogg" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c +# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "..\..\..\..\libogg\include" /D "WIN32" /D "_DEBUG" /D "_LIB" /FR /YX /FD /GZ /c +# ADD BASE RSC /l 0x409 /d "_DEBUG" +# ADD RSC /l 0x409 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo +# ADD LIB32 /nologo + +!ENDIF + +# Begin Target + +# Name "libogg - Win32 Release" +# Name "libogg - Win32 Debug" +# Begin Group "Source Files" + +# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat" +# Begin Source File + +SOURCE=..\..\..\..\libogg\src\bitwise.c +# End Source File +# Begin Source File + +SOURCE=..\..\..\..\libogg\src\framing.c +# End Source File +# End Group +# Begin Group "Header Files" + +# PROP Default_Filter "h;hpp;hxx;hm;inl" +# Begin Source File + +SOURCE=..\..\..\..\libogg\include\ogg\ogg.h +# End Source File +# Begin Source File + +SOURCE=..\..\..\..\libogg\include\ogg\os_types.h +# End Source File +# End Group +# End Target +# End Project Copied: branches/team/elbunce/iaxclient/contrib/win/vc6/libportaudio.dsp (from rev 1286, trunk/contrib/win/vc6/libportaudio.dsp) =================================================================== --- branches/team/elbunce/iaxclient/contrib/win/vc6/libportaudio.dsp (rev 0) +++ branches/team/elbunce/iaxclient/contrib/win/vc6/libportaudio.dsp 2007-11-28 05:30:17 UTC (rev 1287) @@ -0,0 +1,220 @@ +# Microsoft Developer Studio Project File - Name="libportaudio" - Package Owner=<4> +# Microsoft Developer Studio Generated Build File, Format Version 6.00 +# ** DO NOT EDIT ** + +# TARGTYPE "Win32 (x86) Static Library" 0x0104 + +CFG=libportaudio - Win32 Debug +!MESSAGE This is not a valid... [truncated message content] |
From: <do...@us...> - 2007-12-04 05:15:48
|
Revision: 1297 http://iaxclient.svn.sourceforge.net/iaxclient/?rev=1297&view=rev Author: dohpaz Date: 2007-12-03 21:15:51 -0800 (Mon, 03 Dec 2007) Log Message: ----------- Merge up to trunk of r1296. Modified Paths: -------------- branches/team/elbunce/iaxclient/contrib/win/vs2005/libiaxclient.vcproj branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c branches/team/elbunce/iaxclient/lib/video.c Removed Paths: ------------- branches/team/elbunce/iaxclient/simpleclient/stresstest/stresstest.vcproj Property Changed: ---------------- branches/team/elbunce/iaxclient/contrib/win/vs2005/testcall.vcproj branches/team/elbunce/iaxclient/simpleclient/iaxcomm/QUICKSTART branches/team/elbunce/iaxclient/simpleclient/iaxcomm/iaxcomm.htb branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KP0.bmp branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KP1.bmp branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KP2.bmp branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KP3.bmp branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KP4.bmp branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KP5.bmp branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KP6.bmp branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KP7.bmp branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KP8.bmp branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KP9.bmp branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KPPOUND.bmp branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KPSTAR.bmp Modified: branches/team/elbunce/iaxclient/contrib/win/vs2005/libiaxclient.vcproj =================================================================== --- branches/team/elbunce/iaxclient/contrib/win/vs2005/libiaxclient.vcproj 2007-12-03 16:27:40 UTC (rev 1296) +++ branches/team/elbunce/iaxclient/contrib/win/vs2005/libiaxclient.vcproj 2007-12-04 05:15:51 UTC (rev 1297) @@ -40,7 +40,7 @@ Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="..\..\..\lib\libiax2\src;..\..\..\..\portaudio\include;..\..\..\lib\spandsp;..\..\..\lib\gsm\inc;..\..\..\..\speex\include;..\..\..\..\libogg\include;..\..\..\..\libtheora\include;..\..\..\lib\portmixer\px_common;..\..\..\..\libvidcap\include" - PreprocessorDefinitions="WIN32;_DEBUG;_LIB;PA_NO_DS;PA_NO_ASIO;BUILDING_DLL;LIBIAX;_CRT_SECURE_NO_DEPRECATE;strncasecmp=strnicmp;__inline__=_inline;SPEEX_EC=1;NTDDI_VERSION=NTDDI_WIN2KSP4;_WIN32_WINNT=0x0500;WINVER=0x0500;USE_VIDEO;USE_THEORA" + PreprocessorDefinitions="WIN32;_DEBUG;_LIB;PA_NO_DS;PA_NO_ASIO;BUILDING_DLL;LIBIAX;_CRT_SECURE_NO_DEPRECATE;strncasecmp=strnicmp;__inline__=_inline;SPEEX_EC=1;NTDDI_VERSION=NTDDI_WIN2KSP4;_WIN32_WINNT=0x0500;WINVER=0x0500;USE_VIDEO;USE_THEORA;CODEC_GSM" BasicRuntimeChecks="3" RuntimeLibrary="3" WarningLevel="3" @@ -104,7 +104,7 @@ <Tool Name="VCCLCompilerTool" AdditionalIncludeDirectories="..\..\..\lib\libiax2\src;..\..\..\..\portaudio\include;..\..\..\lib\spandsp;..\..\..\lib\gsm\inc;..\..\..\..\speex\include;..\..\..\..\libogg\include;..\..\..\..\libtheora\include;..\..\..\lib\portmixer\px_common;..\..\..\..\libvidcap\include" - PreprocessorDefinitions="WIN32;NDEBUG;_LIB;PA_NO_DS;PA_NO_ASIO;BUILDING_DLL;LIBIAX;_CRT_SECURE_NO_DEPRECATE;strncasecmp=strnicmp;__inline__=_inline;SPEEX_EC=1;NTDDI_VERSION=NTDDI_WIN2KSP4;_WIN32_WINNT=0x0500;WINVER=0x0500;USE_VIDEO;USE_THEORA" + PreprocessorDefinitions="WIN32;NDEBUG;_LIB;PA_NO_DS;PA_NO_ASIO;BUILDING_DLL;LIBIAX;_CRT_SECURE_NO_DEPRECATE;strncasecmp=strnicmp;__inline__=_inline;SPEEX_EC=1;NTDDI_VERSION=NTDDI_WIN2KSP4;_WIN32_WINNT=0x0500;WINVER=0x0500;USE_VIDEO;USE_THEORA;CODEC_GSM" RuntimeLibrary="2" WarningLevel="3" Detect64BitPortabilityProblems="true" @@ -167,7 +167,7 @@ <Tool Name="VCCLCompilerTool" AdditionalIncludeDirectories="..\..\..\lib\libiax2\src;..\..\..\..\portaudio\include;..\..\..\lib\spandsp;..\..\..\lib\gsm\inc;..\..\..\..\speex\include;..\..\..\..\libogg\include;..\..\..\..\libtheora\include;..\..\..\lib\portmixer\px_common;..\..\..\..\libvidcap\include" - PreprocessorDefinitions="WIN32;NDEBUG;_LIB;PA_NO_DS;PA_NO_ASIO;BUILDING_DLL;LIBIAX;_CRT_SECURE_NO_DEPRECATE;strncasecmp=strnicmp;__inline__=_inline;SPEEX_EC=1;NTDDI_VERSION=NTDDI_WIN2KSP4;_WIN32_WINNT=0x0500;WINVER=0x0500" + PreprocessorDefinitions="WIN32;NDEBUG;_LIB;PA_NO_DS;PA_NO_ASIO;BUILDING_DLL;LIBIAX;_CRT_SECURE_NO_DEPRECATE;strncasecmp=strnicmp;__inline__=_inline;SPEEX_EC=1;NTDDI_VERSION=NTDDI_WIN2KSP4;_WIN32_WINNT=0x0500;WINVER=0x0500;USE_VIDEO;USE_THEORA;CODEC_GSM" RuntimeLibrary="2" WarningLevel="3" Detect64BitPortabilityProblems="true" @@ -239,7 +239,7 @@ Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="..\..\..\lib\libiax2\src;..\..\..\..\portaudio\include;..\..\..\lib\spandsp;..\..\..\lib\gsm\inc;..\..\..\..\speex\include;..\..\..\..\libogg\include;..\..\..\..\libtheora\include;..\..\..\lib\portmixer\px_common;..\..\..\..\libvidcap\include" - PreprocessorDefinitions="WIN32;_DEBUG;_LIB;PA_NO_DS;PA_NO_ASIO;BUILDING_DLL;LIBIAX;_CRT_SECURE_NO_DEPRECATE;strncasecmp=strnicmp;__inline__=_inline;SPEEX_EC=1;NTDDI_VERSION=NTDDI_WIN2KSP4;_WIN32_WINNT=0x0500;WINVER=0x0500" + PreprocessorDefinitions="WIN32;_DEBUG;_LIB;PA_NO_DS;PA_NO_ASIO;BUILDING_DLL;LIBIAX;_CRT_SECURE_NO_DEPRECATE;strncasecmp=strnicmp;__inline__=_inline;SPEEX_EC=1;NTDDI_VERSION=NTDDI_WIN2KSP4;_WIN32_WINNT=0x0500;WINVER=0x0500;USE_VIDEO;USE_THEORA;CODEC_GSM" BasicRuntimeChecks="3" RuntimeLibrary="3" WarningLevel="3" Property changes on: branches/team/elbunce/iaxclient/contrib/win/vs2005/testcall.vcproj ___________________________________________________________________ Name: svn:executable - * Modified: branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c =================================================================== --- branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c 2007-12-03 16:27:40 UTC (rev 1296) +++ branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c 2007-12-04 05:15:51 UTC (rev 1297) @@ -488,6 +488,10 @@ s->sendto = iax_sendto; s->pingid = -1; +#ifdef USE_VOICE_TS_PREDICTION + s->nextpred = 0; +#endif + s->jb = jb_new(); if ( !s->jb ) { @@ -546,13 +550,14 @@ static void add_ms(struct timeval *tv, int ms) { tv->tv_usec += ms * 1000; - if(tv->tv_usec > 1000000) { - tv->tv_usec -= 1000000; - tv->tv_sec++; + if (tv->tv_usec > 999999) { + tv->tv_sec += tv->tv_usec / 1000000; + tv->tv_usec %= 1000000; } - if(tv->tv_usec < 0) { - tv->tv_usec += 1000000; - tv->tv_sec--; + + if (tv->tv_usec < 0) { + tv->tv_sec += (tv->tv_usec / 1000000 - 1); + tv->tv_usec = (tv->tv_usec % 1000000) + 1000000; } } #endif @@ -653,7 +658,7 @@ #ifdef USE_VOICE_TS_PREDICTION /* set next predicted ts based on 8khz samples */ if(voice) - session->nextpred = session->nextpred + f->samples / 8; + session->nextpred += f->samples / 8; #endif return ms; Modified: branches/team/elbunce/iaxclient/lib/video.c =================================================================== --- branches/team/elbunce/iaxclient/lib/video.c 2007-12-03 16:27:40 UTC (rev 1296) +++ branches/team/elbunce/iaxclient/lib/video.c 2007-12-04 05:15:51 UTC (rev 1297) @@ -563,7 +563,7 @@ * vidcap_src_release() fails during capture. * * We'll defer the release until the end-application's main thread - * requires the release - if either iaxc_set_video_prefs(), + * requires the release - if either iaxc_set_video_prefs(), * iaxc_video_device_set() or video_destroy() are called. */ @@ -572,6 +572,12 @@ return -1; } + if ( cap_info->video_data_size < 1 ) + { + fprintf(stderr, "FYI: callback with no data\n"); + return 0; + } + if ( vinfo.prefs & IAXC_VIDEO_PREF_CAPTURE_DISABLE ) return 0; @@ -1019,7 +1025,7 @@ capture_callback, 0)) ) { MUTEXUNLOCK(&vinfo.camera_lock); - fprintf(stderr, "failed to start video capture: %d\n", + fprintf(stderr, "failed to start video capture: %d\n", ret); return -1; } @@ -1322,8 +1328,8 @@ } EXPORT int iaxc_video_devices_get(struct iaxc_video_device **devs, - int *num_devs, int *id_selected) -{ + int *num_devs, int *id_selected) +{ int new_device_count; int old_device_count; struct vidcap_src_info *new_src_list; @@ -1331,13 +1337,15 @@ struct iaxc_video_device *new_iaxc_dev_list; struct iaxc_video_device *old_iaxc_dev_list; int found_selected_device = 0; - int list_changed = 0; + int list_changed; int i, n; + if ( !vinfo.sapi ) + return -1; + /* update libvidcap's device list */ new_device_count = vidcap_src_list_update(vinfo.sapi); - if ( new_device_count != vinfo.device_count ) - list_changed = 1; + list_changed = new_device_count != vinfo.device_count; if ( new_device_count < 0 ) { @@ -1346,16 +1354,17 @@ return -1; } - new_src_list = (struct vidcap_src_info *)malloc(new_device_count * - sizeof(struct vidcap_src_info)); + new_src_list = calloc(new_device_count, sizeof(struct vidcap_src_info)); + if ( !new_src_list ) { fprintf(stderr, "ERROR: failed updated source allocation\n"); return -1; } - new_iaxc_dev_list = (struct iaxc_video_device *)malloc( - new_device_count * sizeof(struct iaxc_video_device)); + new_iaxc_dev_list = calloc(new_device_count, + sizeof(struct iaxc_video_device)); + if ( !new_iaxc_dev_list ) { free(new_src_list); @@ -1366,7 +1375,7 @@ /* get an updated libvidcap device list */ if ( vidcap_src_list_get(vinfo.sapi, new_device_count, new_src_list) ) { - fprintf(stderr, "ERROR: failed vidcap_srcList_get()\n"); + fprintf(stderr, "ERROR: failed vidcap_srcList_get().\n"); free(new_src_list); free(new_iaxc_dev_list); @@ -1374,7 +1383,6 @@ } /* build a new iaxclient video source list */ - found_selected_device = 0; for ( n = 0; n < new_device_count; n++ ) { new_iaxc_dev_list[n].name = strdup(new_src_list[n].description); @@ -1454,11 +1462,11 @@ *num_devs = vinfo.device_count; *id_selected = vinfo.selected_device_id; - return list_changed; -} + return list_changed; +} -EXPORT int iaxc_video_device_set(int capture_dev_id) -{ +EXPORT int iaxc_video_device_set(int capture_dev_id) +{ int ret = 0; int dev_num = 0; @@ -1584,16 +1592,18 @@ goto bail; } - vinfo.vc_src_info = (struct vidcap_src_info *)malloc(vinfo.device_count * + vinfo.vc_src_info = calloc(vinfo.device_count, sizeof(struct vidcap_src_info)); + if ( !vinfo.vc_src_info ) { fprintf(stderr, "ERROR: failed vinfo field allocations\n"); goto bail; } - vinfo.devices = (struct iaxc_video_device *)malloc(vinfo.device_count * + vinfo.devices = calloc(vinfo.device_count, sizeof(struct iaxc_video_device)); + if ( !vinfo.devices ) { fprintf(stderr, "ERROR: failed vinfo field allocation\n"); @@ -1637,7 +1647,7 @@ fprintf(stderr, "ERROR: failed vidcap_srcs_notify()\n"); goto late_bail; } - + vinfo.prefs = IAXC_VIDEO_PREF_RECV_LOCAL_RAW | IAXC_VIDEO_PREF_RECV_REMOTE_RAW | @@ -1657,6 +1667,11 @@ free(vinfo.devices); bail: + if ( vinfo.sapi ) + { + vidcap_sapi_release(vinfo.sapi); + vinfo.sapi = 0; + } vidcap_destroy(vinfo.vc); vinfo.vc = 0; return -1; @@ -1682,7 +1697,7 @@ if ( vinfo.src ) vidcap_src_release(vinfo.src); - + vidcap_destroy(vinfo.vc); vinfo.vc = 0; @@ -1723,7 +1738,7 @@ * we are saying that the "camera is working" if there exists * more than zero cameras. */ - return vidcap_src_list_update(vinfo.sapi) > 0; + return vinfo.sapi && vidcap_src_list_update(vinfo.sapi) > 0; } int video_send_stats(struct iaxc_call * call) @@ -1757,27 +1772,27 @@ EXPORT int iaxc_push_video(void *data, unsigned int size, int fragment) { struct iaxc_call *call; - + if (selected_call < 0) return -1; - + call = &calls[selected_call]; if ( vinfo.prefs & IAXC_VIDEO_PREF_SEND_DISABLE ) return 0; - + //fprintf(stderr, "iaxc_push_video: sending video size %d\n", size); - + // Fragment if needed if ( fragment ) { static struct slice_set_t slice_set; int i; - + if ( !vinfo.sc ) vinfo.sc = create_slicer_context((unsigned short)rand(), vfinfo.fragsize); - + slice(data, size, &slice_set, vinfo.sc); for ( i = 0 ; i < slice_set.num_slices ; i++ ) { Property changes on: branches/team/elbunce/iaxclient/simpleclient/iaxcomm/QUICKSTART ___________________________________________________________________ Name: svn:executable - * Property changes on: branches/team/elbunce/iaxclient/simpleclient/iaxcomm/iaxcomm.htb ___________________________________________________________________ Name: svn:executable - * Property changes on: branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KP0.bmp ___________________________________________________________________ Name: svn:executable - * Property changes on: branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KP1.bmp ___________________________________________________________________ Name: svn:executable - * Property changes on: branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KP2.bmp ___________________________________________________________________ Name: svn:executable - * Property changes on: branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KP3.bmp ___________________________________________________________________ Name: svn:executable - * Property changes on: branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KP4.bmp ___________________________________________________________________ Name: svn:executable - * Property changes on: branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KP5.bmp ___________________________________________________________________ Name: svn:executable - * Property changes on: branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KP6.bmp ___________________________________________________________________ Name: svn:executable - * Property changes on: branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KP7.bmp ___________________________________________________________________ Name: svn:executable - * Property changes on: branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KP8.bmp ___________________________________________________________________ Name: svn:executable - * Property changes on: branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KP9.bmp ___________________________________________________________________ Name: svn:executable - * Property changes on: branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KPPOUND.bmp ___________________________________________________________________ Name: svn:executable - * Property changes on: branches/team/elbunce/iaxclient/simpleclient/iaxcomm/rc/bitmaps/KPSTAR.bmp ___________________________________________________________________ Name: svn:executable - * Deleted: branches/team/elbunce/iaxclient/simpleclient/stresstest/stresstest.vcproj =================================================================== --- branches/team/elbunce/iaxclient/simpleclient/stresstest/stresstest.vcproj 2007-12-03 16:27:40 UTC (rev 1296) +++ branches/team/elbunce/iaxclient/simpleclient/stresstest/stresstest.vcproj 2007-12-04 05:15:51 UTC (rev 1297) @@ -1,235 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?> -<VisualStudioProject - ProjectType="Visual C++" - Version="8.00" - Name="vtestcall" - ProjectGUID="{B5F8E725-85A8-4CB1-8824-B82127BB2B1E}" - RootNamespace="vtestcall" - Keyword="ManagedCProj" - > - <Platforms> - <Platform - Name="Win32" - /> - </Platforms> - <ToolFiles> - </ToolFiles> - <Configurations> - <Configuration - Name="Debug|Win32" - OutputDirectory=".\debug" - IntermediateDirectory=".\debug" - ConfigurationType="1" - InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" - CharacterSet="2" - ManagedExtensions="0" - > - <Tool - Name="VCPreBuildEventTool" - /> - <Tool - Name="VCCustomBuildTool" - /> - <Tool - Name="VCXMLDataGeneratorTool" - /> - <Tool - Name="VCWebServiceProxyGeneratorTool" - /> - <Tool - Name="VCMIDLTool" - /> - <Tool - Name="VCCLCompilerTool" - Optimization="0" - AdditionalIncludeDirectories="..\..\lib\portaudio\pa_common;..\..\lib\speex\libspeex;".. \..\lib\portaudio\pablio";..\..\lib;..\..\lib\SDL\include;"$(SDL_DIR)\include"" - PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;_WINDOWS;WITH_THREAD;_USE_MATH_DEFINES;IAXC_VIDEO;IAXC_IAX2;LIBIAX;SPEEX_PREPROCESS=1;PORTAUDIO_DIRECTX;USE_WIN_AUDIO=1;HIRES_TIME;NEWJB;PA_USE_TIMER_CALLBACK=1" - MinimalRebuild="false" - BasicRuntimeChecks="3" - RuntimeLibrary="3" - BufferSecurityCheck="false" - UsePrecompiledHeader="0" - WarningLevel="3" - DebugInformationFormat="3" - CompileAs="2" - /> - <Tool - Name="VCManagedResourceCompilerTool" - /> - <Tool - Name="VCResourceCompilerTool" - /> - <Tool - Name="VCPreLinkEventTool" - /> - <Tool - Name="VCLinkerTool" - IgnoreImportLibrary="false" - AdditionalOptions="/NODEFAULTLIB:LIBCMTD.lib /NODEFAULTLIB:LIBCD.lib " - AdditionalDependencies="dsound.lib iaxclient.lib libtheora.lib libogg.lib SDL.lib wsock32.lib winmm.lib videolib.lib libiax2.lib gsm.lib portaudio.lib libspeex.lib strmiids.lib portmixerd.lib" - ShowProgress="0" - OutputFile="$(OutDir)\$(ProjectName).exe" - LinkIncremental="2" - AdditionalLibraryDirectories=""$(DXSDK_DIR)\lib\x86";..\..\lib\Debug;"$(SDL_DIR)\lib";"$(PSDK_DIR)\lib";..\..\lib\portmixer\winproj" - IgnoreAllDefaultLibraries="false" - GenerateDebugInformation="true" - AssemblyDebug="0" - SubSystem="1" - TargetMachine="1" - /> - <Tool - Name="VCALinkTool" - /> - <Tool - Name="VCManifestTool" - /> - <Tool - Name="VCXDCMakeTool" - /> - <Tool - Name="VCBscMakeTool" - /> - <Tool - Name="VCFxCopTool" - /> - <Tool - Name="VCAppVerifierTool" - /> - <Tool - Name="VCWebDeploymentTool" - /> - <Tool - Name="VCPostBuildEventTool" - /> - </Configuration> - <Configuration - Name="Release|Win32" - OutputDirectory="release" - IntermediateDirectory="$(ConfigurationName)" - ConfigurationType="1" - InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" - CharacterSet="2" - ManagedExtensions="0" - > - <Tool - Name="VCPreBuildEventTool" - /> - <Tool - Name="VCCustomBuildTool" - /> - <Tool - Name="VCXMLDataGeneratorTool" - /> - <Tool - Name="VCWebServiceProxyGeneratorTool" - /> - <Tool - Name="VCMIDLTool" - /> - <Tool - Name="VCCLCompilerTool" - Optimization="0" - AdditionalIncludeDirectories="..\..\lib\portaudio\pa_common;..\..\lib\speex\libspeex;".. \..\lib\portaudio\pablio";..\..\lib;..\..\lib\SDL\include;"$(SDL_DIR)\include"" - PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;_WINDOWS;WITH_THREAD;_USE_MATH_DEFINES;IAXC_VIDEO;IAXC_IAX2;LIBIAX;SPEEX_PREPROCESS=1;PORTAUDIO_DIRECTX;USE_WIN_AUDIO=1;HIRES_TIME;NEWJB;PA_USE_TIMER_CALLBACK=1" - MinimalRebuild="false" - BasicRuntimeChecks="0" - RuntimeLibrary="2" - BufferSecurityCheck="true" - UsePrecompiledHeader="0" - WarningLevel="3" - DebugInformationFormat="3" - /> - <Tool - Name="VCManagedResourceCompilerTool" - /> - <Tool - Name="VCResourceCompilerTool" - /> - <Tool - Name="VCPreLinkEventTool" - /> - <Tool - Name="VCLinkerTool" - AdditionalDependencies="dsound.lib iaxclient.lib libtheora.lib libogg.lib SDL.lib wsock32.lib winmm.lib videolib.lib libiax2.lib gsm.lib portaudio.lib libspeex.lib strmiids.lib portmixer.lib" - LinkIncremental="1" - AdditionalLibraryDirectories=""$(DXSDK_DIR)\lib\x86";..\..\lib\Release;"$(SDL_DIR)\lib";"$(PSDK_DIR)\lib";..\..\lib\portmixer\winproj" - IgnoreDefaultLibraryNames="msvcrtd.lib;msvcrt.lib;libcmtd.lib" - GenerateDebugInformation="true" - SubSystem="1" - OptimizeReferences="2" - EnableCOMDATFolding="2" - TargetMachine="1" - /> - <Tool - Name="VCALinkTool" - /> - <Tool - Name="VCManifestTool" - /> - <Tool - Name="VCXDCMakeTool" - /> - <Tool - Name="VCBscMakeTool" - /> - <Tool - Name="VCFxCopTool" - /> - <Tool - Name="VCAppVerifierTool" - /> - <Tool - Name="VCWebDeploymentTool" - /> - <Tool - Name="VCPostBuildEventTool" - /> - </Configuration> - </Configurations> - <References> - <AssemblyReference - RelativePath="mscorlib.dll" - AssemblyName="mscorlib, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089, processorArchitecture=IA64" - /> - <AssemblyReference - RelativePath="System.dll" - AssemblyName="System, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL" - /> - <AssemblyReference - RelativePath="System.Data.dll" - AssemblyName="System.Data, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089, processorArchitecture=x86" - /> - </References> - <Files> - <Filter - Name="Source Files" - Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx" - UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}" - > - <File - RelativePath=".\vtestcall.c" - > - <FileConfiguration - Name="Debug|Win32" - > - <Tool - Name="VCCLCompilerTool" - CompileAs="1" - /> - </FileConfiguration> - </File> - </Filter> - <Filter - Name="Header Files" - Filter="h;hpp;hxx;hm;inl;inc;xsd" - UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}" - > - </Filter> - <File - RelativePath=".\ReadMe.txt" - > - </File> - </Files> - <Globals> - </Globals> -</VisualStudioProject> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <do...@us...> - 2007-12-06 06:10:20
|
Revision: 1303 http://iaxclient.svn.sourceforge.net/iaxclient/?rev=1303&view=rev Author: dohpaz Date: 2007-12-05 22:10:21 -0800 (Wed, 05 Dec 2007) Log Message: ----------- Merge up to trunk of r1302. Modified Paths: -------------- branches/team/elbunce/iaxclient/lib/libiax2/src/iax-client.h branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c branches/team/elbunce/iaxclient/simpleclient/stresstest/stresstest.c Modified: branches/team/elbunce/iaxclient/lib/libiax2/src/iax-client.h =================================================================== --- branches/team/elbunce/iaxclient/lib/libiax2/src/iax-client.h 2007-12-06 06:05:28 UTC (rev 1302) +++ branches/team/elbunce/iaxclient/lib/libiax2/src/iax-client.h 2007-12-06 06:10:21 UTC (rev 1303) @@ -17,9 +17,6 @@ #if defined(_MSC_VER) /* disable zero-sized array in struct/union warning */ #pragma warning(disable:4200) -#endif - -#ifndef LINUX #define socklen_t int #endif Modified: branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c =================================================================== --- branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c 2007-12-06 06:05:28 UTC (rev 1302) +++ branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c 2007-12-06 06:10:21 UTC (rev 1303) @@ -3113,7 +3113,7 @@ if (ntohs(fh->scallno) & IAX_FLAG_FULL) { /* Full size header */ - if (len < sizeof(struct ast_iax2_full_hdr)) { + if ((size_t)len < sizeof(struct ast_iax2_full_hdr)) { DEBU(G "Short header received from %s\n", inet_ntoa(sin->sin_addr)); IAXERROR "Short header received from %s\n", inet_ntoa(sin->sin_addr)); return NULL; @@ -3132,7 +3132,7 @@ DEBU(G "No session?\n"); return NULL; } else { - if (len < sizeof(struct ast_iax2_mini_hdr)) { + if ((size_t)len < sizeof(struct ast_iax2_mini_hdr)) { DEBU(G "Short header received from %s\n", inet_ntoa(sin->sin_addr)); IAXERROR "Short header received from %s\n", inet_ntoa(sin->sin_addr)); return NULL; Modified: branches/team/elbunce/iaxclient/simpleclient/stresstest/stresstest.c =================================================================== --- branches/team/elbunce/iaxclient/simpleclient/stresstest/stresstest.c 2007-12-06 06:05:28 UTC (rev 1302) +++ branches/team/elbunce/iaxclient/simpleclient/stresstest/stresstest.c 2007-12-06 06:10:21 UTC (rev 1303) @@ -1,18 +1,21 @@ /* -* vtestcall: make a single video test call with IAXCLIENT +* stresstest: simple program for applying IAX2 protocol stress to asterisk. * -* IAX Support for talking to Asterisk and other Gnophone clients +* Copyrights: +* Copyright (C) 2007, Wimba, Inc. * -* Copyright (C) 1999, Linux Support Services, Inc. -* -* Mark Spencer <mar...@li...> -* Stefano Falsetto <fal...@gn...> +* Contributors: * Mihai Balea <mihai AT hates DOT ms> +* Peter Grayson <jpg...@gm...> * * This program is free software, distributed under the terms of -* the GNU Lesser (Library) General Public License +* the GNU Lesser (Library) General Public License. */ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + #include <stdarg.h> #include <stdio.h> #include <stdlib.h> @@ -256,7 +259,6 @@ char *dest = NULL; char *ogg_file = NULL; int loop = 0; - int callNo; /* install signal handler to catch CRTL-Cs */ signal(SIGINT, signal_handler); @@ -319,8 +321,11 @@ default: usage(); } - } else + } + else + { dest = argv[i]; + } } if ( dest == NULL ) @@ -341,6 +346,7 @@ iaxc_video_format_set(formatp, format, framerate, bitrate, width, height, fragsize); iaxc_set_test_mode(1); + if (iaxc_initialize(MAX_CALLS)) fatal_error("cannot initialize iaxclient!"); @@ -351,14 +357,12 @@ iaxc_set_event_callback(test_mode_callback); // Crank the engine - iaxc_start_processing_thread(); + if ( iaxc_start_processing_thread() < 0 ) + fatal_error("failed iaxc_start_processing_thread()\n"); // Dial out - callNo = iaxc_call(dest); - if (callNo <= 0) - iaxc_select_call(callNo); - else - mylog("Failed to make call to '%s'", dest); + if ( iaxc_call(dest) < 0 ) + fatal_error("failed iaxc_call()"); // Wait for the call to be established; while ( !call_established && running ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <do...@us...> - 2007-12-21 14:52:44
|
Revision: 1325 http://iaxclient.svn.sourceforge.net/iaxclient/?rev=1325&view=rev Author: dohpaz Date: 2007-12-21 06:52:48 -0800 (Fri, 21 Dec 2007) Log Message: ----------- Merge up to trunk of r1324. Modified Paths: -------------- branches/team/elbunce/iaxclient/Doxyfile branches/team/elbunce/iaxclient/doc/src/mainpage.dox branches/team/elbunce/iaxclient/lib/iaxclient_lib.c branches/team/elbunce/iaxclient/lib/libiax2/src/iax-client.h branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c branches/team/elbunce/iaxclient/lib/libiax2/src/iax2-parser.c Modified: branches/team/elbunce/iaxclient/Doxyfile =================================================================== --- branches/team/elbunce/iaxclient/Doxyfile 2007-12-20 17:45:11 UTC (rev 1324) +++ branches/team/elbunce/iaxclient/Doxyfile 2007-12-21 14:52:48 UTC (rev 1325) @@ -200,7 +200,7 @@ ENABLE_PREPROCESSING = YES MACRO_EXPANSION = YES EXPAND_ONLY_PREDEF = YES -SEARCH_INCLUDES = YES +SEARCH_INCLUDES = NO INCLUDE_PATH = INCLUDE_FILE_PATTERNS = PREDEFINED = DOXYGEN_SHOULD_SKIP_THIS \ Modified: branches/team/elbunce/iaxclient/doc/src/mainpage.dox =================================================================== --- branches/team/elbunce/iaxclient/doc/src/mainpage.dox 2007-12-20 17:45:11 UTC (rev 1324) +++ branches/team/elbunce/iaxclient/doc/src/mainpage.dox 2007-12-21 14:52:48 UTC (rev 1325) @@ -1,8 +1,7 @@ /*! \mainpage <A href="http://iaxclient.sourceforge.net/">IAXClient</A> is an Open Source library to implement the IAX protocol used by -<A href="http://www.asterisk.org/">The Asterisk Software PBX</A>. -It is licensed under the the LGPL \ref License.<BR> +<A href="http://www.asterisk.org/">The Asterisk Software PBX</A> and is licensed under the the LGPL \ref License.<BR> Although asterisk supports other VOIP protocols (including SIP, and with patches, H.323), IAX's simple, lightweight nature gives it several advantages, particularly in that it can operate easily through NAT and packet firewalls, and it is easily extensible and simple to understand. Modified: branches/team/elbunce/iaxclient/lib/iaxclient_lib.c =================================================================== --- branches/team/elbunce/iaxclient/lib/iaxclient_lib.c 2007-12-20 17:45:11 UTC (rev 1324) +++ branches/team/elbunce/iaxclient/lib/iaxclient_lib.c 2007-12-21 14:52:48 UTC (rev 1325) @@ -1795,6 +1795,7 @@ iaxci_usermsg(IAXC_ERROR, "Registration requested by someone, but we don't understand!"); } else if ( e->etype == IAX_EVENT_CONNECT ) + { iaxc_handle_connect(e); } else if ( e->etype == IAX_EVENT_TIMEOUT ) Modified: branches/team/elbunce/iaxclient/lib/libiax2/src/iax-client.h =================================================================== --- branches/team/elbunce/iaxclient/lib/libiax2/src/iax-client.h 2007-12-20 17:45:11 UTC (rev 1324) +++ branches/team/elbunce/iaxclient/lib/libiax2/src/iax-client.h 2007-12-21 14:52:48 UTC (rev 1325) @@ -184,6 +184,7 @@ extern int iax_ring_announce(struct iax_session *session); extern struct sockaddr_in iax_get_peer_addr(struct iax_session *session); extern int iax_register(struct iax_session *session, const char *hostname, const char *peer, const char *secret, int refresh); +extern int iax_unregister(struct iax_session *session, const char *hostname, const char *peer, const char *secret, const char *reason); extern int iax_lag_request(struct iax_session *session); extern int iax_dial(struct iax_session *session, char *number); /* Dial on a TBD call */ extern int iax_dialplan_request(struct iax_session *session, char *number); /* Request dialplan status for number */ @@ -246,8 +247,8 @@ extern void iax_set_jb_target_extra( long value ); /* Portable 'decent' random number generation */ -void iax_seed_random(); -int iax_random(); +extern void iax_seed_random(void); +extern int iax_random(void); #if defined(__cplusplus) } Modified: branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c =================================================================== --- branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c 2007-12-20 17:45:11 UTC (rev 1324) +++ branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c 2007-12-21 14:52:48 UTC (rev 1325) @@ -202,6 +202,8 @@ struct timeval rxcore; /* Current link state */ int state; + /* Unregister reason */ + char unregreason[MAXSTRLEN]; /* Expected Username */ char username[MAXSTRLEN]; /* Expected Secret */ @@ -282,7 +284,7 @@ srandomdev(); #elif defined(HAVE_SRANDOM) srandom((unsigned int)time(0)); -#elif define(HAVE_SRAND48) +#elif defined(HAVE_SRAND48) srand48((long int)time(0)); #else srand((unsigned int)time(0)); @@ -1756,6 +1758,8 @@ else strcpy(session->secret, ""); + memset(&session->unregreason, 0, sizeof(session->unregreason)); + /* Connect first */ hp = gethostbyname(tmp); if (!hp) { @@ -1773,6 +1777,49 @@ return res; } +int iax_unregister(struct iax_session *session, const char *server, const char *peer, const char *secret, const char *reason) +{ + /* Send an unregistration request */ + char tmp[256]; + char *p; + int portno = IAX_DEFAULT_PORTNO; + struct iax_ie_data ied; + struct hostent *hp; + + tmp[255] = '\0'; + strncpy(tmp, server, sizeof(tmp) - 1); + p = strchr(tmp, ':'); + if (p) { + *p = '\0'; + portno = atoi(p+1); + } + + memset(&ied, 0, sizeof(ied)); + if (secret) + strncpy(session->secret, secret, sizeof(session->secret) - 1); + else + strcpy(session->secret, ""); + + if (reason && strlen(reason)) + strncpy(session->unregreason, reason, sizeof(session->unregreason) - 1); + else + strcpy(session->unregreason, "Unspecified"); + + /* Connect first */ + hp = gethostbyname(tmp); + if (!hp) { + snprintf(iax_errstr, sizeof(iax_errstr), "Invalid hostname: %s", tmp); + return -1; + } + memcpy(&session->peeraddr.sin_addr, hp->h_addr, sizeof(session->peeraddr.sin_addr)); + session->peeraddr.sin_port = htons(portno); + session->peeraddr.sin_family = AF_INET; + strncpy(session->username, peer, sizeof(session->username) - 1); + iax_ie_append_str(&ied, IAX_IE_USERNAME, peer); + iax_ie_append_str(&ied, IAX_IE_CAUSE, session->unregreason); + return send_command(session, AST_FRAME_IAX, IAX_COMMAND_REGREL, 0, ied.buf, ied.pos, -1); +} + int iax_reject(struct iax_session *session, char *reason) { struct iax_ie_data ied; @@ -1970,7 +2017,6 @@ struct iax_ie_data ied; memset(&ied, 0, sizeof(ied)); iax_ie_append_str(&ied, IAX_IE_USERNAME, session->username); - iax_ie_append_short(&ied, IAX_IE_REFRESH, session->refresh); if ((methods & IAX_AUTHMETHOD_MD5) && challenge) { MD5Init(&md5); MD5Update(&md5, (const unsigned char *) challenge, @@ -1984,7 +2030,13 @@ } else { iax_ie_append_str(&ied, IAX_IE_PASSWORD, password); } - return send_command(session, AST_FRAME_IAX, IAX_COMMAND_REGREQ, 0, ied.buf, ied.pos, -1); + if (strlen(session->unregreason)) { /* Non-zero unregreason length indicates REGREL */ + iax_ie_append_str(&ied, IAX_IE_CAUSE, session->unregreason); + return send_command(session, AST_FRAME_IAX, IAX_COMMAND_REGREL, 0, ied.buf, ied.pos, -1); + } else { + iax_ie_append_short(&ied, IAX_IE_REFRESH, session->refresh); + return send_command(session, AST_FRAME_IAX, IAX_COMMAND_REGREQ, 0, ied.buf, ied.pos, -1); + } } Modified: branches/team/elbunce/iaxclient/lib/libiax2/src/iax2-parser.c =================================================================== --- branches/team/elbunce/iaxclient/lib/libiax2/src/iax2-parser.c 2007-12-20 17:45:11 UTC (rev 1324) +++ branches/team/elbunce/iaxclient/lib/libiax2/src/iax2-parser.c 2007-12-21 14:52:48 UTC (rev 1325) @@ -345,7 +345,12 @@ "ANSWER ", "BUSY ", "TKOFFHK ", - "OFFHOOK" }; + "OFFHOOK ", + "CONGESTION ", + "FLASH ", + "WINK ", + "OPTION " + }; struct ast_iax2_full_hdr *fh; char retries[20]; char class2[20]; @@ -368,7 +373,7 @@ /* Don't mess with mini-frames */ return; } - if (fh->type > (int)sizeof(frames)/(int)sizeof(char *)) { + if (fh->type >= (int)(sizeof(frames)/sizeof(char *))) { snprintf(class2, (int)sizeof(class2), "(%d?)", fh->type); clas = class2; } else { @@ -385,7 +390,7 @@ subclass = iaxs[(int)fh->csub]; } } else if (fh->type == AST_FRAME_CONTROL) { - if (fh->csub > (int)sizeof(cmds)/(int)sizeof(char *)) { + if (fh->csub >= (int)(sizeof(cmds)/sizeof(char *))) { snprintf(subclass2, (int)sizeof(subclass2), "(%d?)", fh->csub); subclass = subclass2; } else { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <do...@us...> - 2008-01-30 19:02:57
|
Revision: 1337 http://iaxclient.svn.sourceforge.net/iaxclient/?rev=1337&view=rev Author: dohpaz Date: 2008-01-30 11:02:59 -0800 (Wed, 30 Jan 2008) Log Message: ----------- Merge up to trunk of r1336. Modified Paths: -------------- branches/team/elbunce/iaxclient/configure.ac branches/team/elbunce/iaxclient/contrib/win/vc6/libiax2.dsp branches/team/elbunce/iaxclient/contrib/win/vs2005/libiax2.vcproj branches/team/elbunce/iaxclient/contrib/win/vs2005/libiaxclient.vcproj branches/team/elbunce/iaxclient/lib/audio_encode.c branches/team/elbunce/iaxclient/lib/audio_portaudio.c branches/team/elbunce/iaxclient/lib/iaxclient_lib.c branches/team/elbunce/iaxclient/lib/iaxclient_lib.h branches/team/elbunce/iaxclient/lib/libiax2/configure.in branches/team/elbunce/iaxclient/lib/libiax2/src/iax-client.h branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c branches/team/elbunce/iaxclient/lib/video.c branches/team/elbunce/iaxclient/lib/winfuncs.c Removed Paths: ------------- branches/team/elbunce/iaxclient/lib/libiax2/src/winpoop.h Modified: branches/team/elbunce/iaxclient/configure.ac =================================================================== --- branches/team/elbunce/iaxclient/configure.ac 2008-01-30 16:18:05 UTC (rev 1336) +++ branches/team/elbunce/iaxclient/configure.ac 2008-01-30 19:02:59 UTC (rev 1337) @@ -47,6 +47,7 @@ AC_CHECK_FUNCS([vsnprintf _vsnprintf]) AC_CHECK_FUNCS([srandomdev srandom srand48 random lrand48]) +AC_CHECK_FUNCS(gettimeofday) ACX_PTHREAD Modified: branches/team/elbunce/iaxclient/contrib/win/vc6/libiax2.dsp =================================================================== --- branches/team/elbunce/iaxclient/contrib/win/vc6/libiax2.dsp 2008-01-30 16:18:05 UTC (rev 1336) +++ branches/team/elbunce/iaxclient/contrib/win/vc6/libiax2.dsp 2008-01-30 19:02:59 UTC (rev 1337) @@ -159,10 +159,6 @@ SOURCE=..\..\..\lib\libiax2\src\ringtone.h # End Source File -# Begin Source File - -SOURCE=..\..\..\lib\libiax2\src\winpoop.h -# End Source File # End Group # End Target # End Project Modified: branches/team/elbunce/iaxclient/contrib/win/vs2005/libiax2.vcproj =================================================================== --- branches/team/elbunce/iaxclient/contrib/win/vs2005/libiax2.vcproj 2008-01-30 16:18:05 UTC (rev 1336) +++ branches/team/elbunce/iaxclient/contrib/win/vs2005/libiax2.vcproj 2008-01-30 19:02:59 UTC (rev 1337) @@ -222,10 +222,6 @@ RelativePath="..\..\..\lib\libiax2\src\ringtone.h" > </File> - <File - RelativePath="..\..\..\lib\libiax2\src\winpoop.h" - > - </File> </Filter> <Filter Name="Resource Files" Modified: branches/team/elbunce/iaxclient/contrib/win/vs2005/libiaxclient.vcproj =================================================================== --- branches/team/elbunce/iaxclient/contrib/win/vs2005/libiaxclient.vcproj 2008-01-30 16:18:05 UTC (rev 1336) +++ branches/team/elbunce/iaxclient/contrib/win/vs2005/libiaxclient.vcproj 2008-01-30 19:02:59 UTC (rev 1337) @@ -40,7 +40,7 @@ Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="..\..\..\lib\libiax2\src;..\..\..\..\portaudio\include;..\..\..\lib\spandsp;..\..\..\lib\gsm\inc;..\..\..\..\speex\include;..\..\..\..\libogg\include;..\..\..\..\libtheora\include;..\..\..\lib\portmixer\px_common;..\..\..\..\libvidcap\include" - PreprocessorDefinitions="WIN32;_DEBUG;_LIB;PA_NO_DS;PA_NO_ASIO;BUILDING_DLL;LIBIAX;_CRT_SECURE_NO_DEPRECATE;strncasecmp=strnicmp;__inline__=_inline;SPEEX_EC=1;NTDDI_VERSION=NTDDI_WIN2KSP4;_WIN32_WINNT=0x0500;WINVER=0x0500;USE_VIDEO;USE_THEORA;CODEC_GSM" + PreprocessorDefinitions="WIN32;_DEBUG;_LIB;PA_NO_DS;PA_NO_ASIO;BUILDING_DLL;LIBIAX;_CRT_SECURE_NO_DEPRECATE;strncasecmp=strnicmp;__inline__=_inline;NTDDI_VERSION=NTDDI_WIN2KSP4;_WIN32_WINNT=0x0500;WINVER=0x0500;USE_VIDEO;USE_THEORA;CODEC_GSM" BasicRuntimeChecks="3" RuntimeLibrary="3" WarningLevel="3" @@ -104,7 +104,7 @@ <Tool Name="VCCLCompilerTool" AdditionalIncludeDirectories="..\..\..\lib\libiax2\src;..\..\..\..\portaudio\include;..\..\..\lib\spandsp;..\..\..\lib\gsm\inc;..\..\..\..\speex\include;..\..\..\..\libogg\include;..\..\..\..\libtheora\include;..\..\..\lib\portmixer\px_common;..\..\..\..\libvidcap\include" - PreprocessorDefinitions="WIN32;NDEBUG;_LIB;PA_NO_DS;PA_NO_ASIO;BUILDING_DLL;LIBIAX;_CRT_SECURE_NO_DEPRECATE;strncasecmp=strnicmp;__inline__=_inline;SPEEX_EC=1;NTDDI_VERSION=NTDDI_WIN2KSP4;_WIN32_WINNT=0x0500;WINVER=0x0500;USE_VIDEO;USE_THEORA;CODEC_GSM" + PreprocessorDefinitions="WIN32;NDEBUG;_LIB;PA_NO_DS;PA_NO_ASIO;BUILDING_DLL;LIBIAX;_CRT_SECURE_NO_DEPRECATE;strncasecmp=strnicmp;__inline__=_inline;NTDDI_VERSION=NTDDI_WIN2KSP4;_WIN32_WINNT=0x0500;WINVER=0x0500;USE_VIDEO;USE_THEORA;CODEC_GSM" RuntimeLibrary="2" WarningLevel="3" Detect64BitPortabilityProblems="true" @@ -167,7 +167,7 @@ <Tool Name="VCCLCompilerTool" AdditionalIncludeDirectories="..\..\..\lib\libiax2\src;..\..\..\..\portaudio\include;..\..\..\lib\spandsp;..\..\..\lib\gsm\inc;..\..\..\..\speex\include;..\..\..\..\libogg\include;..\..\..\..\libtheora\include;..\..\..\lib\portmixer\px_common;..\..\..\..\libvidcap\include" - PreprocessorDefinitions="WIN32;NDEBUG;_LIB;PA_NO_DS;PA_NO_ASIO;BUILDING_DLL;LIBIAX;_CRT_SECURE_NO_DEPRECATE;strncasecmp=strnicmp;__inline__=_inline;SPEEX_EC=1;NTDDI_VERSION=NTDDI_WIN2KSP4;_WIN32_WINNT=0x0500;WINVER=0x0500;USE_VIDEO;USE_THEORA;CODEC_GSM" + PreprocessorDefinitions="WIN32;NDEBUG;_LIB;PA_NO_DS;PA_NO_ASIO;BUILDING_DLL;LIBIAX;_CRT_SECURE_NO_DEPRECATE;strncasecmp=strnicmp;__inline__=_inline;NTDDI_VERSION=NTDDI_WIN2KSP4;_WIN32_WINNT=0x0500;WINVER=0x0500;USE_VIDEO;USE_THEORA;CODEC_GSM" RuntimeLibrary="2" WarningLevel="3" Detect64BitPortabilityProblems="true" @@ -239,7 +239,7 @@ Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="..\..\..\lib\libiax2\src;..\..\..\..\portaudio\include;..\..\..\lib\spandsp;..\..\..\lib\gsm\inc;..\..\..\..\speex\include;..\..\..\..\libogg\include;..\..\..\..\libtheora\include;..\..\..\lib\portmixer\px_common;..\..\..\..\libvidcap\include" - PreprocessorDefinitions="WIN32;_DEBUG;_LIB;PA_NO_DS;PA_NO_ASIO;BUILDING_DLL;LIBIAX;_CRT_SECURE_NO_DEPRECATE;strncasecmp=strnicmp;__inline__=_inline;SPEEX_EC=1;NTDDI_VERSION=NTDDI_WIN2KSP4;_WIN32_WINNT=0x0500;WINVER=0x0500;USE_VIDEO;USE_THEORA;CODEC_GSM" + PreprocessorDefinitions="WIN32;_DEBUG;_LIB;PA_NO_DS;PA_NO_ASIO;BUILDING_DLL;LIBIAX;_CRT_SECURE_NO_DEPRECATE;strncasecmp=strnicmp;__inline__=_inline;NTDDI_VERSION=NTDDI_WIN2KSP4;_WIN32_WINNT=0x0500;WINVER=0x0500;USE_VIDEO;USE_THEORA;CODEC_GSM" BasicRuntimeChecks="3" RuntimeLibrary="3" WarningLevel="3" Modified: branches/team/elbunce/iaxclient/lib/audio_encode.c =================================================================== --- branches/team/elbunce/iaxclient/lib/audio_encode.c 2008-01-30 16:18:05 UTC (rev 1336) +++ branches/team/elbunce/iaxclient/lib/audio_encode.c 2008-01-30 19:02:59 UTC (rev 1337) @@ -71,7 +71,7 @@ float input_db; float output_db; - gettimeofday(&now, 0); + now = iax_tvnow(); if ( last.tv_sec != 0 && iaxci_usecdiff(&now, &last) < 100000 ) return 0; @@ -261,7 +261,7 @@ int insize = samples; /* update last input timestamp */ - gettimeofday( &timeLastInput, NULL ) ; + timeLastInput = iax_tvnow(); silent = input_postprocess(data, insize, 8000); @@ -342,7 +342,7 @@ int insize = len; int outsize = *samples; - gettimeofday( &timeLastOutput, NULL ) ; + timeLastOutput = iax_tvnow(); if ( format == 0 ) { Modified: branches/team/elbunce/iaxclient/lib/audio_portaudio.c =================================================================== --- branches/team/elbunce/iaxclient/lib/audio_portaudio.c 2008-01-30 16:18:05 UTC (rev 1336) +++ branches/team/elbunce/iaxclient/lib/audio_portaudio.c 2008-01-30 19:02:59 UTC (rev 1337) @@ -38,16 +38,19 @@ #include "portmixer.h" #ifdef USE_MEC2 +#define DO_EC #include "mec3.h" static echo_can_state_t *ec; #endif #ifdef SPAN_EC +#define DO_EC #include "ec/echo.h" static echo_can_state_t *ec; #endif -#ifdef SPEEX_EC +#if defined(SPEEX_EC) && ! defined (WIN32) +#define DO_EC #define restrict __restrict #include "speex/speex_echo.h" static SpeexEchoState *ec; @@ -427,33 +430,35 @@ * it's turned back on. */ if ( !(iaxc_get_filters() & IAXC_FILTER_ECHO) ) { +#if defined(DO_EC) if ( ec ) { #if defined(USE_MEC2) || defined(SPAN_EC) echo_can_free(ec); ec = NULL; -#endif -#if defined(SPEEX_EC) +#elif defined(SPEEX_EC) speex_echo_state_destroy(ec); ec = NULL; #endif } +#endif return; } /* we want echo cancellation */ +#if defined(DO_EC) if ( !ec ) { rb_InitializeRingBuffer(&ecOutRing, EC_RING_SZ, &outRingBuf); #if defined(USE_MEC2) || defined(SPAN_EC) ec = echo_can_create(ECHO_TAIL, 0); -#endif -#if defined(SPEEX_EC) +#elif defined(SPEEX_EC) ec = speex_echo_state_init(SAMPLES_PER_FRAME, ECHO_TAIL); #endif } +#endif /* fill ecOutRing */ rb_WriteRingBuffer(&ecOutRing, outputBuffer, n * 2); @@ -465,7 +470,7 @@ rb_ReadRingBuffer(&ecOutRing, delayedBuf, n * 2); -#if defined(SPEEX_EC) +#if defined(DO_EC) && defined(SPEEX_EC) { short cancelledBuffer[1024]; Modified: branches/team/elbunce/iaxclient/lib/iaxclient_lib.c =================================================================== --- branches/team/elbunce/iaxclient/lib/iaxclient_lib.c 2008-01-30 16:18:05 UTC (rev 1336) +++ branches/team/elbunce/iaxclient/lib/iaxclient_lib.c 2008-01-30 19:02:59 UTC (rev 1337) @@ -742,7 +742,7 @@ { if ( callNo < 0 ) return; - gettimeofday(&calls[callNo].last_activity, NULL); + calls[callNo].last_activity = iax_tvnow(); } static void iaxc_refresh_registrations() @@ -750,7 +750,7 @@ struct iaxc_registration *cur; struct timeval now; - gettimeofday(&now,NULL); + now = iax_tvnow(); for ( cur = registrations; cur != NULL; cur = cur->next ) { @@ -1273,7 +1273,7 @@ return -1; } - gettimeofday(&newreg->last,NULL); + newreg->last = iax_tvnow(); newreg->refresh = refresh; strncpy(newreg->host, host, 256); Modified: branches/team/elbunce/iaxclient/lib/iaxclient_lib.h =================================================================== --- branches/team/elbunce/iaxclient/lib/iaxclient_lib.h 2008-01-30 16:18:05 UTC (rev 1336) +++ branches/team/elbunce/iaxclient/lib/iaxclient_lib.h 2008-01-30 19:02:59 UTC (rev 1337) @@ -32,7 +32,6 @@ #include <string.h> #if defined(WIN32) || defined(_WIN32_WCE) -void gettimeofday(struct timeval *tv, void /*struct timezone*/ *tz); #include <winsock.h> #if !defined(_WIN32_WCE) #include <process.h> Modified: branches/team/elbunce/iaxclient/lib/libiax2/configure.in =================================================================== --- branches/team/elbunce/iaxclient/lib/libiax2/configure.in 2008-01-30 16:18:05 UTC (rev 1336) +++ branches/team/elbunce/iaxclient/lib/libiax2/configure.in 2008-01-30 19:02:59 UTC (rev 1337) @@ -15,6 +15,8 @@ dnl Check header files AC_HEADER_STDC +AC_CHECK_FUNCS(gettimeofday) + AC_SUBST(LIBS) AC_ARG_ENABLE(snomhack, [ --enable-snomhack Use slower memset for SNOM phoneem ],,enable_snomhack=no) Modified: branches/team/elbunce/iaxclient/lib/libiax2/src/iax-client.h =================================================================== --- branches/team/elbunce/iaxclient/lib/libiax2/src/iax-client.h 2008-01-30 16:18:05 UTC (rev 1336) +++ branches/team/elbunce/iaxclient/lib/libiax2/src/iax-client.h 2008-01-30 19:02:59 UTC (rev 1337) @@ -200,6 +200,8 @@ extern void iax_enable_debug(void); extern void iax_disable_debug(void); +extern struct timeval iax_tvnow(void); + /* For attended transfer, application create a new session, * make a call on the new session. * On answer of the new session, call iax_setup_transfer and wait for Modified: branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c =================================================================== --- branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c 2008-01-30 16:18:05 UTC (rev 1336) +++ branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c 2008-01-30 19:02:59 UTC (rev 1337) @@ -34,6 +34,9 @@ #include <stdio.h> #include <limits.h> +#if !defined(_WIN32_WCE) +#include <sys/timeb.h> +#endif #define snprintf _snprintf @@ -44,14 +47,6 @@ #endif #endif -#ifdef __cplusplus -extern "C" { -#endif -void gettimeofday(struct timeval *tv, void /*struct timezone*/ *tz); -#ifdef __cplusplus -} -#endif - #else #include <netdb.h> @@ -278,30 +273,6 @@ s->sendto = ptr; } -void iax_seed_random() -{ -#if defined(HAVE_SRANDOMDEV) - srandomdev(); -#elif defined(HAVE_SRANDOM) - srandom((unsigned int)time(0)); -#elif defined(HAVE_SRAND48) - srand48((long int)time(0)); -#else - srand((unsigned int)time(0)); -#endif -} - -int iax_random() -{ -#if defined(HAVE_RANDOM) - return (int)random(); -#elif defined(HAVE_LRAND48) - return (int)lrand48(); -#else - return rand(); -#endif -} - /* This is a little strange, but to debug you call DEBU(G "Hello World!\n"); */ #if defined(WIN32) || defined(_WIN32_WCE) #define G __FILE__, __LINE__, @@ -346,6 +317,30 @@ #define G #endif +void iax_seed_random() +{ +#if defined(HAVE_SRANDOMDEV) + srandomdev(); +#elif defined(HAVE_SRANDOM) + srandom((unsigned int)time(0)); +#elif defined(HAVE_SRAND48) + srand48((long int)time(0)); +#else + srand((unsigned int)time(0)); +#endif +} + +int iax_random() +{ +#if defined(HAVE_RANDOM) + return (int)random(); +#elif defined(HAVE_LRAND48) + return (int)lrand48(); +#else + return rand(); +#endif +} + typedef void (*sched_func)(void *); struct iax_sched { @@ -393,7 +388,7 @@ sched = (struct iax_sched*)malloc(sizeof(struct iax_sched)); if (sched) { memset(sched, 0, sizeof(struct iax_sched)); - gettimeofday(&sched->when, NULL); + sched->when = iax_tvnow(); sched->when.tv_sec += (ms / 1000); ms = ms % 1000; sched->when.tv_usec += (ms * 1000); @@ -460,7 +455,7 @@ /* If there are no pending events, we don't need to timeout */ if (!cur) return -1; - gettimeofday(&tv, NULL); + tv = iax_tvnow(); while(cur) { ms = (cur->when.tv_sec - tv.tv_sec) * 1000 + (cur->when.tv_usec - tv.tv_usec) / 1000; @@ -595,7 +590,7 @@ /* If this is the first packet we're sending, get our offset now. */ if (!session->offset.tv_sec && !session->offset.tv_usec) - gettimeofday(&session->offset, NULL); + session->offset = iax_tvnow(); /* If the timestamp is specified, just use their specified timestamp no matter what. Usually this is done for @@ -608,7 +603,7 @@ } /* Otherwise calculate the timestamp from the current time */ - gettimeofday(&tv, NULL); + tv = iax_tvnow(); /* Calculate the number of milliseconds since we sent the first packet */ ms = (tv.tv_sec - session->offset.tv_sec) * 1000 + @@ -1418,12 +1413,12 @@ struct iax_session *s0 = org_session; struct iax_session *s1 = new_session; + int transfer_id = 1 + (int)(32767.0 * (iax_random() / (RAND_MAX + 1.0))); + memset(&ied0, 0, sizeof(ied0)); memset(&ied1, 0, sizeof(ied1)); - int transfer_id = 1 + (int)(32767.0 * (iax_random() / (RAND_MAX + 1.0))); - /* reversed setup */ iax_ie_append_addr(&ied0, IAX_IE_APPARENT_ADDR, &s1->peeraddr); iax_ie_append_short(&ied0, IAX_IE_CALLNO, s1->peercallno); @@ -2230,9 +2225,9 @@ int ms; if (!session->rxcore.tv_sec && !session->rxcore.tv_usec) { - gettimeofday(&session->rxcore, NULL); + session->rxcore = iax_tvnow(); } - gettimeofday(&tv, NULL); + tv = iax_tvnow(); ms = (tv.tv_sec - session->rxcore.tv_sec) * 1000 + (tv.tv_usec - session->rxcore.tv_usec) / 1000; @@ -3266,7 +3261,7 @@ struct iax_sched *cur; struct iax_session *session; - gettimeofday(&tv, NULL); + tv = iax_tvnow(); while((cur = iax_get_sched(tv))) { @@ -3492,3 +3487,21 @@ return send_command(session, AST_FRAME_IAX, IAX_COMMAND_QUELCH, 0, ied.buf, ied.pos, -1); } + +struct timeval iax_tvnow(void) +{ + struct timeval tv; + +#ifdef HAVE_GETTIMEOFDAY + gettimeofday(&tv, 0); +#elif defined(_MSC_VER) + struct _timeb curSysTime; + + _ftime(&curSysTime); + tv.tv_sec = (long)curSysTime.time; + tv.tv_usec = curSysTime.millitm * 1000; +#else +#error no gettimeofday or equivalent available +#endif + return tv; +} Deleted: branches/team/elbunce/iaxclient/lib/libiax2/src/winpoop.h =================================================================== --- branches/team/elbunce/iaxclient/lib/libiax2/src/winpoop.h 2008-01-30 16:18:05 UTC (rev 1336) +++ branches/team/elbunce/iaxclient/lib/libiax2/src/winpoop.h 2008-01-30 19:02:59 UTC (rev 1337) @@ -1,41 +0,0 @@ -/* - * Functions Windows doesn't have... but should - * Copyright(C) 2001, Linux Support Services, Inc. - * - * Distributed under GNU LGPL. - * - * These are NOT fully compliant with BSD 4.3 and are not - * threadsafe. - * - */ - -#ifndef _winpoop_h -#define _winpoop_h - -#if defined(_MSC_VER) -#define INLINE __inline -#else -#define INLINE inline -#endif - -#include <winsock.h> - -void gettimeofday(struct timeval *tv, void /*struct timezone*/ *tz); - -static INLINE int inet_aton(char *cp, struct in_addr *inp) -{ - int a1, a2, a3, a4; - unsigned int saddr; - - if (sscanf(cp, "%d.%d.%d.%d", &a1, &a2, &a3, &a4) != 4) - return 0; - a1 &= 0xff; - a2 &= 0xff; - a3 &= 0xff; - a4 &= 0xff; - saddr = (a1 << 24) | (a2 << 16) | (a3 << 8) | a4; - inp->s_addr = htonl(saddr); - return 1; -} - -#endif Modified: branches/team/elbunce/iaxclient/lib/video.c =================================================================== --- branches/team/elbunce/iaxclient/lib/video.c 2008-01-30 16:18:05 UTC (rev 1336) +++ branches/team/elbunce/iaxclient/lib/video.c 2008-01-30 19:02:59 UTC (rev 1337) @@ -139,7 +139,7 @@ return; memset(&vcodec->video_stats, 0, sizeof(struct iaxc_video_stats)); - gettimeofday(&vcodec->video_stats.start_time, 0); + vcodec->video_stats.start_time = iax_tvnow(); } static void reset_video_stats(struct iaxc_call * call) @@ -200,9 +200,9 @@ return -1; if ( video_stats_start.tv_sec == 0 && video_stats_start.tv_usec == 0 ) - gettimeofday(&video_stats_start, 0); + video_stats_start = iax_tvnow(); - gettimeofday(&now, 0); + now = iax_tvnow(); if ( iaxci_msecdiff(&now, &video_stats_start) > video_stats_interval ) { @@ -732,7 +732,7 @@ /* Gather statistics */ call->vencoder->video_stats.outbound_frames++; - gettimeofday(&now, 0); + now = iax_tvnow(); time_delta = iaxci_msecdiff(&now, &call->vencoder->video_stats.start_time); @@ -1298,7 +1298,7 @@ } /* Statistics */ - gettimeofday(&now, 0); + now = iax_tvnow(); time = iaxci_msecdiff(&now, &call->vdecoder->video_stats.start_time); call->vdecoder->video_stats.received_slices++; call->vdecoder->video_stats.acc_recv_size += encoded_video_len; @@ -1778,9 +1778,9 @@ return -1; if ( video_stats_start.tv_sec == 0 && video_stats_start.tv_usec == 0 ) - gettimeofday(&video_stats_start, 0); + video_stats_start = iax_tvnow(); - gettimeofday(&now, 0); + now = iax_tvnow(); if ( iaxci_msecdiff(&now, &video_stats_start) > video_stats_interval ) { Modified: branches/team/elbunce/iaxclient/lib/winfuncs.c =================================================================== --- branches/team/elbunce/iaxclient/lib/winfuncs.c 2008-01-30 16:18:05 UTC (rev 1336) +++ branches/team/elbunce/iaxclient/lib/winfuncs.c 2008-01-30 19:02:59 UTC (rev 1337) @@ -19,33 +19,6 @@ #include <stdio.h> -#if !defined(_WIN32_WCE) -#include <sys/timeb.h> - -/* Win-doze doesnt have gettimeofday(). This sux. So, what we did is -provide some gettimeofday-like functionality that works for our purposes. */ - -/* - changed 'struct timezone*' to 'void*' since - timezone is defined as a long in MINGW and caused compile-time warnings. - this should be okay since we don't use the passed value. -*/ - - -/* - * functions implementations - */ - -void gettimeofday( struct timeval* tv, void* tz ) -{ - struct _timeb curSysTime; - - _ftime(&curSysTime); - tv->tv_sec = (long)curSysTime.time; - tv->tv_usec = curSysTime.millitm * 1000; -} -#endif - void os_init(void) { WSADATA wsd; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <do...@us...> - 2008-05-04 15:33:51
|
Revision: 1428 http://iaxclient.svn.sourceforge.net/iaxclient/?rev=1428&view=rev Author: dohpaz Date: 2008-05-04 08:33:56 -0700 (Sun, 04 May 2008) Log Message: ----------- Merge up to trunk of r1427. Modified Paths: -------------- branches/team/elbunce/iaxclient/Makefile.am branches/team/elbunce/iaxclient/README.VisualStudio branches/team/elbunce/iaxclient/autogen.sh branches/team/elbunce/iaxclient/configure.ac branches/team/elbunce/iaxclient/contrib/macosx/Prefixes.h branches/team/elbunce/iaxclient/contrib/tcl/Prefixes.h branches/team/elbunce/iaxclient/contrib/tcl/XThreadUtil.c branches/team/elbunce/iaxclient/contrib/tcl/configure branches/team/elbunce/iaxclient/contrib/tcl/configure.in branches/team/elbunce/iaxclient/contrib/tcl/iaxclient.c branches/team/elbunce/iaxclient/contrib/tcl/macosx/PBExportedSymbols branches/team/elbunce/iaxclient/contrib/tcl/pkgIndex.tcl branches/team/elbunce/iaxclient/contrib/tcl/pkgIndex.tcl.in branches/team/elbunce/iaxclient/contrib/win/vs2003/iaxclient_dll.vcproj branches/team/elbunce/iaxclient/contrib/win/vs2003/iaxclient_lib.vcproj branches/team/elbunce/iaxclient/contrib/win/vs2005/iaxclient.sln branches/team/elbunce/iaxclient/contrib/win/vs2005/libiaxclient.vcproj branches/team/elbunce/iaxclient/contrib/win/vs2005/libportmixer.vcproj branches/team/elbunce/iaxclient/contrib/win/vs2005/libspeex.vcproj branches/team/elbunce/iaxclient/contrib/win/vs2005/libtheora.vcproj branches/team/elbunce/iaxclient/contrib/win/vs2005/libvidcap.vcproj branches/team/elbunce/iaxclient/contrib/win/vs2005/testcall.vcproj branches/team/elbunce/iaxclient/iaxclient.pc.in branches/team/elbunce/iaxclient/lib/Makefile.am branches/team/elbunce/iaxclient/lib/audio_encode.c branches/team/elbunce/iaxclient/lib/audio_encode.h branches/team/elbunce/iaxclient/lib/audio_portaudio.c branches/team/elbunce/iaxclient/lib/iaxclient.h branches/team/elbunce/iaxclient/lib/iaxclient_lib.c branches/team/elbunce/iaxclient/lib/libiax2/src/frame.h branches/team/elbunce/iaxclient/lib/libiax2/src/iax-client.h branches/team/elbunce/iaxclient/lib/libiax2/src/iax.c branches/team/elbunce/iaxclient/lib/libiax2/src/iax2.h branches/team/elbunce/iaxclient/lib/portmixer/px_win_wmme/px_win_wmme.c branches/team/elbunce/iaxclient/lib/video.c branches/team/elbunce/iaxclient/m4/speex.m4 branches/team/elbunce/iaxclient/simpleclient/iaxcomm/Makefile.am branches/team/elbunce/iaxclient/simpleclient/iaxcomm/prefs.cc branches/team/elbunce/iaxclient/simpleclient/stresstest/Makefile.am branches/team/elbunce/iaxclient/simpleclient/stresstest/file.c branches/team/elbunce/iaxclient/simpleclient/stresstest/file.h branches/team/elbunce/iaxclient/simpleclient/testcall/Makefile.am branches/team/elbunce/iaxclient/simpleclient/testcall/testcall.c branches/team/elbunce/iaxclient/simpleclient/vtestcall/Makefile.am Added Paths: ----------- branches/team/elbunce/iaxclient/contrib/tcl/build-iaxclient.txt branches/team/elbunce/iaxclient/contrib/tcl/macosx/iaxclient.xcodeproj/ branches/team/elbunce/iaxclient/contrib/tcl/macosx/iaxclient.xcodeproj/project.pbxproj branches/team/elbunce/iaxclient/contrib/win/vs2005/vtestcall.vcproj branches/team/elbunce/iaxclient/simpleclient/iaxcomm/iaxcomm.sln branches/team/elbunce/iaxclient/simpleclient/iaxcomm/iaxcomm.vcproj Removed Paths: ------------- branches/team/elbunce/iaxclient/contrib/tcl/macosx/iaxclient.pbproj/ branches/team/elbunce/iaxclient/contrib/tcl/macosx/iaxclient.xcodeproj/project.pbxproj branches/team/elbunce/iaxclient/simpleclient/videotest/mihai.vcproj branches/team/elbunce/iaxclient/simpleclient/vtestcall/vtestcall.vcproj Modified: branches/team/elbunce/iaxclient/Makefile.am =================================================================== --- branches/team/elbunce/iaxclient/Makefile.am 2008-04-24 18:58:00 UTC (rev 1427) +++ branches/team/elbunce/iaxclient/Makefile.am 2008-05-04 15:33:56 UTC (rev 1428) @@ -12,6 +12,8 @@ README.VisualStudio \ autogen.sh \ contrib \ + doc \ + Doxyfile \ m4 dist-hook: Modified: branches/team/elbunce/iaxclient/README.VisualStudio =================================================================== --- branches/team/elbunce/iaxclient/README.VisualStudio 2008-04-24 18:58:00 UTC (rev 1427) +++ branches/team/elbunce/iaxclient/README.VisualStudio 2008-05-04 15:33:56 UTC (rev 1428) @@ -2,69 +2,90 @@ 2005. A reference solution file and project files are located in the contrib/win/vs2005 directory. - 1) The following environment variables must be set. Use the "System" - properties dialog in the Windows Control Panel to set these - variables either for the user or system-wide. +Steps demarked with (*) are only required if building with video +support. - %DXSDK_DIR% + 1*) Set the DXSDK_DIR environment variable. + + Use the "System" properties dialog in the Windows Control Panel to + set this variable either for the user or system-wide. The value is + the path to the DirectX SDK. The June 2007, August 2007, and + December 2006 versions of the DirectX SDK are known to work. - Path to the DirectX SDK. The June 2007 version of the DirectX - SDK is known to work. The December 2006 version is also know to - work. + 2*) Install the Microsoft Windows Software Development Kit. + + Version 6.0 is known to work. After installing the Windows SDK, run + the program "Start -> Microsoft Windows SDK -> Visual Studio + Registration -> Integrate Windows SDK with Visual Studio". This + registers include and library paths with Visual Studio. + + See here for the Windows SDK: - %PSDK_DIR% + http://www.microsoft.com/downloads/details.aspx?familyid=4377F86D-C913-4B5C-B87E-EF72E5B4E065 + + 3) Obtain dependencies. + + 3a) At the time of this writing, portaudio-v19 and speex-1.2beta3 are + required for all configurations. Sources may be found here: - Path to the Platform SDK. The Windows SDK is known to work for - this. Assuming the Windows SDK is installed in the default - location, PSDK_DIR would be set to: + http://portaudio.com/archives/pa_snapshot_v19.tar.gz + http://downloads.xiph.org/releases/speex/speex-1.2beta3.tar.gz - C:\Program Files\Microsoft SDKs\Windows\v6.0 + 3b*) For video support, libogg-1.1.3, libtheora-1.0beta2, and + libvidcap-0.2.1 are also required. Source for these dependencies + are available here: - The older Platform SDK for Windows Server 2003 Release 2 is also - known to work. + http://downloads.xiph.org/releases/ogg/libogg-1.1.3.tar.gz + http://downloads.xiph.org/releases/theora/libtheora-1.0beta2.tar.gz + http://downloads.sourceforge.net/libvidcap/libvidcap-0.2.1.tar.gz - See here for the Windows SDK: + 3c*) Additionally, to build vtestcall, SDL is required. A prebuilt + binary development package is available here: - http://www.microsoft.com/downloads/details.aspx?FamilyID=c2b1e300-f358-4523-b479-f53d234cdccf + http://www.libsdl.org/release/SDL-devel-1.2.13-VC8.zip - 2) Obtain dependencies. At the time of this writing, portaudio-v19, - libogg 1.1.3, speex 1.2beta1, libtheora 1.0alpha7, and libvidcap are required. - Source for these dependencies are available here: + 4) Rename/move directories. - http://portaudio.com/archives/pa_snapshot_v19.tar.gz - http://downloads.xiph.org/releases/ogg/libogg-1.1.3.tar.gz - http://downloads.xiph.org/releases/speex/speex-1.2beta1.tar.gz - http://downloads.xiph.org/releases/theora/libtheora-1.0alpha7.tar.gz - http://downloads.sourceforge.net/libvidcap/libvidcap-0.1.tar.gz + In order to build with the vcproj files provided by iaxclient, these + dependent libraries must be moved to be peer directories to the + iaxclient source directory. They also must have the following names: + portaudio, speex, libogg, libtheora, libvidcap, and SDL. So the + final directory layout must look like this: - In order to build with the vcproj files provided by iaxclient, - these dependent libraries must be moved to be peer directories to - the iaxclient source directory. They also must have the following - names: libogg, speex, libtheora and libvidcap. So the final directory - layout would be as follows: - C:\...\whereever\iaxclient C:\...\whereever\portaudio + C:\...\whereever\speex C:\...\whereever\libogg - C:\...\whereever\speex C:\...\whereever\libtheora C:\...\whereever\libvidcap + C:\...\whereever\SDL - 2) Open the solution file: contrib/win/vs2005/iaxclient.sln + 5) Open the solution file. + + Using Visual Studio 2005, open contrib/win/vs2005/iaxclient.sln. - 3) Choose configuration. There are four options: - Release -- optimized static library - Release_dll -- optimized dynamic link library - Debug -- debug static library - Debug_dll -- debug dynamic link library + 6) Choose configuration. - 4) Build the solution. This will build iaxclient and all its - dependent libraries. All dependent libraries are linked into - the final library. The final libiaxclient library can be found - here (depending on the configuration chosen): + There are four options: + Release -- optimized static library + Release_dll -- optimized dynamic link library + Release_novideo -- optimized static library without video support + Debug -- debug static library + Debug_dll -- debug dynamic link library + Debug_novideo -- debug static library without video support + + 6) Build the solution. + + This will build iaxclient and all its dependent libraries. All + dependent libraries are linked into the final library. The final + libiaxclient library can be found here (depending on the + configuration chosen): + Release\libiaxclient\libiaxclient.lib Release_dll\libiaxclient\libiaxclient.dll + Release_novideo\libiaxclient\libiaxclient.lib Debug\libiaxclient\libiaxclient.lib Debug_dll\libiaxclient\libiaxclient.dll + Debug_novideo\libiaxclient\libiaxclient.lib Modified: branches/team/elbunce/iaxclient/autogen.sh =================================================================== --- branches/team/elbunce/iaxclient/autogen.sh 2008-04-24 18:58:00 UTC (rev 1427) +++ branches/team/elbunce/iaxclient/autogen.sh 2008-05-04 15:33:56 UTC (rev 1428) @@ -1,4 +1,4 @@ -#!/bin/sh -e +#!/bin/bash -e error() { Modified: branches/team/elbunce/iaxclient/configure.ac =================================================================== --- branches/team/elbunce/iaxclient/configure.ac 2008-04-24 18:58:00 UTC (rev 1427) +++ branches/team/elbunce/iaxclient/configure.ac 2008-05-04 15:33:56 UTC (rev 1428) @@ -3,9 +3,9 @@ AC_PREREQ(2.59) dnl Package version -m4_define(IAXC_VERSION, [2.1-svn]) +m4_define(IAXC_VERSION, [2.x-trunk]) -AC_INIT(iaxclient, IAXC_VERSION, [jpg...@gm...]) +AC_INIT(iaxclient, IAXC_VERSION, [iax...@li...]) AC_CONFIG_SRCDIR([lib/iaxclient.h]) AC_CONFIG_HEADERS([config.h]) @@ -15,7 +15,7 @@ dnl Libtool library version IAXC_LT_CURRENT=1 -IAXC_LT_REVISION=0 +IAXC_LT_REVISION=2 IAXC_LT_AGE=0 AC_SUBST(IAXC_LT_CURRENT) @@ -66,7 +66,6 @@ CFLAGS=${CFLAGS-"-O2 -g -Wall --std=gnu99"} CXXFLAGS=${CXXFLAGS-"-O2 -g -Wall"} -# AC_ARG_ENABLE saves the option's argument in enable_FEATURE AC_ARG_ENABLE(local-gsm, [AS_HELP_STRING([--enable-local-gsm], [Use local gsm library [default=auto]])],, @@ -80,17 +79,17 @@ AC_ARG_ENABLE(debug-iax, [AS_HELP_STRING([--enable-debug-iax], [Enable debug support in local iax library])], - enable_debug_iax2=$enableval, - enable_debug_iax2="no") + enable_debug_iax2=$enableval, + enable_debug_iax2="no") -AC_ARG_ENABLE(speex_preprocess, - [AS_HELP_STRING([--disable-speex-preprocess], - [Turn off speex preprocessing])],, - [enable_speex_preprocess="yes"]) +AC_ARG_ENABLE(video, + [AS_HELP_STRING([--enable-video], + [Enable video support [default=yes]])],, + [enable_video="yes"]) AC_ARG_WITH(echo-can, [AS_HELP_STRING([--with-echo-can], - [use echo can (span, speex or mec2) [default=speex]])], + [use echo can (span or speex) [default=speex]])], use_echo_can=$withval, use_echo_can="speex") @@ -104,35 +103,12 @@ [Enable iLBC support (You need to place the iLBC reference sources in lib/iLBC) [default=auto]])],, with_ilbc="auto") -case "$with_ilbc" in - yes) - enable_local_ilbc=yes ;; - no) - enable_local_ilbc=no ;; - auto) - AC_MSG_CHECKING([for iLBC reference sources in lib/iLBC]) - if test -r lib/iLBC/iLBC_encode.c; then - enable_local_ilbc=yes - else - enable_local_ilbc=no - fi - AC_MSG_RESULT([$enable_local_ilbc]) ;; - - *) - AC_MSG_ERROR([bad value ${with_ilbc} for --with-ilbc]) ;; -esac - AC_ARG_WITH(wish, [AS_HELP_STRING([--with-wish], [Path to Tcl command language interpreter])], WISH="${with_wish}", with_wish="auto") -AC_ARG_WITH(video, - [AS_HELP_STRING([--without-video], - [Video support])],, - with_video="yes") - AC_ARG_WITH(ogg, [AS_HELP_STRING([--without-ogg], [OGG support])],, @@ -154,24 +130,23 @@ FFMPEG="${with_ffmpeg}", with_ffmpeg="no") -if test ! "x$enable_clients" = "xauto"; then - for client in ${enable_clients}; do - case "$client" in - iaxcomm | iaxphone | stresstest | testcall | tkphone | vtestcall | WinIAX | wx) - clients="$clients $client" ;; - all | yes) - clients="iaxcomm iaxphone stresstest testcall tkphone vtestcall WinIAX wx" - break ;; - none | no) - clients="" - break ;; - *) - AC_MSG_ERROR(bad value ${client} for --enable-clients) ;; - esac - done -fi +case "$with_ilbc" in + yes) + enable_local_ilbc=yes ;; + no) + enable_local_ilbc=no ;; + auto) + AC_MSG_CHECKING([for iLBC reference sources in lib/iLBC]) + if test -r lib/iLBC/iLBC_encode.c; then + enable_local_ilbc=yes + else + enable_local_ilbc=no + fi + AC_MSG_RESULT([$enable_local_ilbc]) ;; -AM_OPTIONS_WXCONFIG + *) + AC_MSG_ERROR([bad value ${with_ilbc} for --with-ilbc]) ;; +esac case $host_os in *mingw32*|*cygwin* ) @@ -200,6 +175,28 @@ obtain a copy. ])) +PKG_CHECK_MODULES(SPEEX, [speex >= 1.2],,AC_MSG_ERROR([ + speex is required to build this package! + please see http://www.xiph.org/ for how to + obtain a copy. +])) + +PKG_CHECK_MODULES(SPEEXDSP, [speexdsp >= 1.2],,AC_MSG_ERROR([ + speexdsp is required to build this package! + please see http://www.xiph.org/ for how to + obtain a copy. +])) + +PKG_CHECK_MODULES(SDL, [sdl >= 1.2], has_sdl=yes, has_sdl=no) +PKG_CHECK_MODULES(GTK, [gtk+-2.0 >= 2.0], has_gtk2=yes, has_gtk2=no) +PKG_CHECK_MODULES(GDK2, [gdk-2.0 >= 2.0.0], has_gdk2=yes, has_gdk2=no) +PKG_CHECK_MODULES(ALSA, [alsa >= 1.0], has_alsa=yes, has_alsa=no) +PKG_CHECK_MODULES(OGG, [ogg >= 1.1.3], has_ogg=yes, has_ogg=no) +PKG_CHECK_MODULES(OGGZ, [oggz >= 0.9.5], has_oggz=yes, has_oggz=no) +PKG_CHECK_MODULES(THEORA, [theora >= 1.0alpha7], has_theora=yes, has_theora=no) +PKG_CHECK_MODULES(VIDCAP, [vidcap >= 0.1], has_vidcap=yes, has_vidcap=no) +PKG_CHECK_MODULES(FFMPEG, [libavcodec >= 51.40.3], has_ffmpeg=yes, has_ffmpeg=no) + has_gsm=no if test x$enable_local_gsm = xyes; then has_gsm=yes @@ -208,93 +205,67 @@ AM_PATH_GSM(has_gsm=yes, has_gsm=no) fi -if test x$with_video = xyes; then - AC_DEFINE(USE_VIDEO, 1, [Define to 1 to enable Video support]) -fi -AM_CONDITIONAL(VIDEO, test x$with_video = xyes) +PACKAGE_REQUIRES="" -has_ogg=no -if test ! x$with_ogg = xno; then -PKG_CHECK_MODULES(OGG, [ogg >= 1.1.3],has_ogg=yes) -if test x$has_ogg = xyes; then - AC_DEFINE(USE_OGG, 1, [OGG]) - PKG_REQUIRES="$PKG_REQUIRES ogg" -elif test ! x$with_ogg = xauto ; then - AC_MSG_ERROR([ - libogg is required to build this package! - please see http://www.xiph.org/ for how to - obtain a copy. - ]) -fi -fi -AM_CONDITIONAL(OGG, test x$has_ogg = xyes) - -PKG_CHECK_MODULES(SPEEX, [speex >= 1.2],,AC_MSG_ERROR([ - speex is required to build this package! - please see http://www.xiph.org/ for how to - obtain a copy. -])) +if test x$enable_video = xyes; then -has_theora=no -if test ! x$with_theora = xno; then -PKG_CHECK_MODULES(THEORA, [theora >= 1.0alpha7],has_theora=yes) -if test x$has_theora = xyes; then - AC_DEFINE(USE_THEORA, 1, [THEORA]) - PKG_REQUIRES="$PKG_REQUIRES theora" -elif test ! x$with_theora = xauto ; then - AC_MSG_ERROR([ - libtheora is required to build this package! - please see http://www.xiph.org/ for how to - obtain a copy. - ]) -fi -fi -AM_CONDITIONAL(THEORA, test x$has_theora = xyes) - -has_vidcap=no -if test ! x$with_vidcap = xno; then - PKG_CHECK_MODULES(VIDCAP, [vidcap >= 0.1],has_vidcap=yes) + if test x$with_ogg != xno; then + if test x$has_ogg = xyes; then + AC_DEFINE(USE_OGG, 1, [OGG]) + PACKAGE_REQUIRES="$PACKAGE_REQUIRES ogg" + elif test x$with_ogg != xauto ; then + AC_MSG_ERROR([ + libogg is required to build this package! + please see http://www.xiph.org/ for how to + obtain a copy. + ]) + fi + fi + + if test x$with_theora != xno; then + if test x$has_theora = xyes; then + AC_DEFINE(USE_THEORA, 1, [THEORA]) + PACKAGE_REQUIRES="$PACKAGE_REQUIRES theora" + elif test x$with_theora != xauto ; then + AC_MSG_ERROR([ + libtheora is required to build this package! + please see http://www.xiph.org/ for how to + obtain a copy. + ]) + fi + fi + if test x$has_vidcap = xyes; then AC_DEFINE(USE_VIDCAP, 1, [VIDCAP]) - PKG_REQUIRES="$PKG_REQUIRES vidcap" - elif test ! x$with_vidcap = xauto ; then + PACKAGE_REQUIRES="$PACKAGE_REQUIRES vidcap" + else AC_MSG_ERROR([ libvidcap is required to build this package! please see http://libvidcap.sourceforge.net/ for how to obtain a copy. ]) fi + + if test x$with_ffmpeg != xno; then + if test x$has_ffmpeg = xyes; then + AC_DEFINE(USE_FFMPEG, 1, [FFMPEG]) + PACKAGE_REQUIRES="$PACKAGE_REQUIRES ffmpeg" + elif test x$with_ffmpeg != xauto ; then + AC_MSG_ERROR([ + FFmpeg is required to build this package! + please see http://ffmpeg.mplayerhq.hu/ for how to + obtain a copy. + ]) + fi + fi fi -AM_CONDITIONAL(VIDCAP, test x$has_vidcap = xyes) -has_ffmpeg=no -if test ! x$with_ffmpeg = xno; then -PKG_CHECK_MODULES(FFMPEG, [libavcodec >= 51.40.3],has_ffmpeg=yes) -if test x$has_ffmpeg = xyes; then - AC_DEFINE(USE_FFMPEG, 1, [FFMPEG]) - PKG_REQUIRES="$PKG_REQUIRES ffmpeg" -elif test ! x$with_ffmpeg = xauto ; then - AC_MSG_ERROR([ - FFmpeg is required to build this package! - please see http://ffmpeg.mplayerhq.hu/ for how to - obtain a copy. - ]) -fi -fi -AM_CONDITIONAL(FFMPEG, test x$has_ffmpeg = xyes) - -PKG_CHECK_MODULES(SDL, [sdl >= 1.2], has_sdl=yes, has_sdl=no) -PKG_CHECK_MODULES(GTK, [gtk+-2.0 >= 2.0], has_gtk2=yes, has_gtk2=no) -PKG_CHECK_MODULES(GDK2, [gdk-2.0 >= 2.0.0], has_gdk2=yes, has_gdk2=no) -PKG_CHECK_MODULES(ALSA, [alsa >= 1.0], has_alsa=yes, has_alsa=no) -PKG_CHECK_MODULES(OGGZ, [oggz >= 0.9.5], has_oggz=yes, has_oggz=no) - has_iax2=no -if test ! x$enable_local_iax = xyes; then +if test x$enable_local_iax != xyes; then AM_PATH_IAX2(0.2.3,has_iax2=yes,has_iax2=no) fi -if test x$has_iax2 = xno && test ! x$enable_local_iax = xno; then +if test x$has_iax2 = xno && test x$enable_local_iax != xno; then has_iax2=yes enable_local_iax2=yes IAX2_CFLAGS='-I$(top_srcdir)/lib/libiax2/src -DLIBIAX' @@ -302,6 +273,8 @@ IAX2_CONFIG="" fi +AM_OPTIONS_WXCONFIG + has_wx="no" AM_PATH_WXCONFIG(2.6.0, [has_wx="2.6"], [AM_PATH_WXCONFIG(2.4.0, [has_wx="2.4"])]) @@ -316,7 +289,7 @@ CXXFLAGS="$WX_CXXFLAGS_ONLY" AC_LANG_PUSH(C++) -if test ! x$has_wx = xno; then +if test x$has_wx != xno; then AC_CHECK_HEADER(wx/xrc/xmlres.h,has_wx_xrc=yes, [AC_MSG_WARN([Can't find wx/xrc/xml.h]) has_wx_xrc=no]) @@ -358,32 +331,33 @@ CXXFLAGS="$save_CXXFLAGS" dnl End wx xrc check -if test x$enable_speex_preprocess = xyes; then - AC_DEFINE(SPEEX_PREPROCESS, 1, [Speex preprocess]) +if test x$enable_video = xyes; then + AC_DEFINE(USE_VIDEO, 1, [Define to 1 to enable video support]) fi -AM_CONDITIONAL(SPAN_EC, test x$use_echo_can = xspan) if test x$use_echo_can = xspan; then - AC_DEFINE(SPAN_EC, 1, [Span echo can]) + AC_DEFINE(SPAN_EC, 1, [Define to 1 to enable span echo cancellation]) fi if test x$use_echo_can = xspeex; then - AC_DEFINE(SPEEX_EC, 1, [Speex echo can]) + AC_DEFINE(SPEEX_EC, 1, [Define to 1 to enable speex echo cancellation]) fi -if test x$use_echo_can = xmec2; then - AC_DEFINE(MEC2_EC, 1, [Mec echo can]) -fi - if test x$enable_local_ilbc = xyes; then - AC_DEFINE(CODEC_ILBC,,[Enable ILBC support]) + AC_DEFINE(CODEC_ILBC,,[Define to 1 to enable ILBC support]) fi -if test x$has_gsm = xyes && test ! x$with_gsm = xno; then - AC_DEFINE(CODEC_GSM,,[Enable GSM support]) +if test x$has_gsm = xyes && test x$with_gsm != xno; then + AC_DEFINE(CODEC_GSM,,[Define to 1 to enable GSM support]) fi -AM_CONDITIONAL(USE_CODEC_GSM, test x$has_gsm = xyes && test ! x$with_gsm = xno) +AM_CONDITIONAL(VIDEO, test x$enable_video = xyes) +AM_CONDITIONAL(OGG, test x$has_ogg = xyes && test x$with_ogg != xno) +AM_CONDITIONAL(THEORA, test x$has_theora = xyes && test x$with_theora != xno) +AM_CONDITIONAL(VIDCAP, test x$has_vidcap = xyes && test x$with_vidcap != xno) +AM_CONDITIONAL(FFMPEG, test x$has_ffmpeg = xyes && test x$with_ffmpeg != xno) +AM_CONDITIONAL(SPAN_EC, test x$use_echo_can = xspan) +AM_CONDITIONAL(USE_CODEC_GSM, test x$has_gsm = xyes && test x$with_gsm != xno) AM_CONDITIONAL(USE_LOCAL_GSM, test x$enable_local_gsm = xyes) AM_CONDITIONAL(USE_LOCAL_IAX2, test x$enable_local_iax2 = xyes) AM_CONDITIONAL(USE_DEBUG_IAX2, test x$enable_debug_iax2 = xyes) @@ -393,14 +367,29 @@ AM_CONDITIONAL(MACOSX, test x$OSTYPE = xMACOSX) # Autodetect clients -if test "x$enable_clients" = "xauto"; then +if test "x$enable_clients" != "xauto"; then + for client in ${enable_clients}; do + case "$client" in + iaxcomm | iaxphone | stresstest | testcall | tkphone | vtestcall | WinIAX | wx) + clients="$clients $client" ;; + all | yes) + clients="iaxcomm iaxphone stresstest testcall tkphone vtestcall WinIAX wx" + break ;; + none | no) + clients="" + break ;; + *) + AC_MSG_ERROR(bad value ${client} for --enable-clients) ;; + esac + done +else clients="$clients testcall" - if test x$has_oggz = xyes && test x$has_theora = xyes; then + if test x$enable_video = xyes && test x$has_oggz = xyes && test x$has_theora = xyes; then clients="$clients stresstest" fi - if test ! x$has_wx = xno; then + if test x$has_wx != xno; then clients="$clients iaxphone" if test "x$has_gdk2" = xyes; then clients="$clients wx" @@ -411,7 +400,7 @@ fi fi - if test x$has_sdl = xyes && test x$with_video = xyes; then + if test x$has_sdl = xyes && test x$enable_video = xyes; then clients="$clients vtestcall" fi @@ -419,7 +408,7 @@ clients="$clients WinIAX" fi - if test ! x$WISH = x && test "x$has_gdk2" = "xyes"; then + if test x$WISH != x && test "x$has_gdk2" = "xyes"; then clients="$clients tkphone" fi fi @@ -434,7 +423,7 @@ CLIENTS="$CLIENTS $client";; vtestcall) - if test ! x$has_sdl = xyes || test ! x$with_video = xyes ; then + if test x$has_sdl != xyes || test x$enable_video != xyes ; then AC_MSG_ERROR([vtestcall requires SDL and video]) fi CLIENTS="$CLIENTS $client";; @@ -474,7 +463,7 @@ done AC_SUBST(CLIENTS) -AC_SUBST(PKG_REQUIRES) +AC_SUBST(PACKAGE_REQUIRES) AC_CONFIG_FILES([ Makefile Modified: branches/team/elbunce/iaxclient/contrib/macosx/Prefixes.h =================================================================== --- branches/team/elbunce/iaxclient/contrib/macosx/Prefixes.h 2008-04-24 18:58:00 UTC (rev 1427) +++ branches/team/elbunce/iaxclient/contrib/macosx/Prefixes.h 2008-05-04 15:33:56 UTC (rev 1428) @@ -3,10 +3,8 @@ #define LIBIAX //#define CODEC_ILBC 0 -#define SPEEX_PREPROCESS 1 //#define SPAN_EC 0 #define SPEEX_EC 1 -//#define MEC2_EC 0 Modified: branches/team/elbunce/iaxclient/contrib/tcl/Prefixes.h =================================================================== --- branches/team/elbunce/iaxclient/contrib/tcl/Prefixes.h 2008-04-24 18:58:00 UTC (rev 1427) +++ branches/team/elbunce/iaxclient/contrib/tcl/Prefixes.h 2008-05-04 15:33:56 UTC (rev 1428) @@ -5,10 +5,8 @@ //#define CODEC_ILBC 0 -#define SPEEX_PREPROCESS 1 //#define SPAN_EC 0 #define SPEEX_EC 1 -//#define MEC2_EC 0 #define USE_NEWJB 1 //#define USE_VIDEO 0 Modified: branches/team/elbunce/iaxclient/contrib/tcl/XThreadUtil.c =================================================================== --- branches/team/elbunce/iaxclient/contrib/tcl/XThreadUtil.c 2008-04-24 18:58:00 UTC (rev 1427) +++ branches/team/elbunce/iaxclient/contrib/tcl/XThreadUtil.c 2008-05-04 15:33:56 UTC (rev 1428) @@ -12,9 +12,9 @@ * * By Mats Bengtsson and Zoran Vasiljevic 2006 * - * \xCA 1. XThread_RegisterThread - * \xCA 2. XThread_UnregisterThread - * \xCA 3. XThread_EvalInThread + * 1. XThread_RegisterThread + * 2. XThread_UnregisterThread + * 3. XThread_EvalInThread * * The 1. needs to be called from your master thread, i.e. the * one you would like to execute the callbacks within. @@ -30,9 +30,9 @@ #include <string.h> #if TARGET_API_MAC_CARBON -# include <Tcl/tcl.h> +# include <Tcl/tcl.h> #else -# include "tcl.h" +# include "tcl.h" #endif #ifndef TCL_TSD_INIT @@ -46,7 +46,7 @@ */ typedef struct ThreadSpecificData { - Tcl_Interp *interp; /* Interp to evaluate scripts */ + Tcl_Interp *interp; /* Interp to evaluate scripts */ } ThreadSpecificData; static Tcl_ThreadDataKey dataKey; @@ -76,15 +76,10 @@ } ThreadSendData; -static void -ThreadSend _ANSI_ARGS_((Tcl_ThreadId targetId, ThreadSendData *send)); +static void ThreadSend _ANSI_ARGS_((Tcl_ThreadId targetId, ThreadSendData *send)); +static int ThreadEventProc _ANSI_ARGS_((Tcl_Event *evPtr, int mask)); +static void ThreadFreeProc _ANSI_ARGS_((ClientData clientData)); -static int -ThreadEventProc _ANSI_ARGS_((Tcl_Event *evPtr, int mask)); - -static void -ThreadFreeProc _ANSI_ARGS_((ClientData clientData)); - /* *---------------------------------------------------------------------- * @@ -102,7 +97,8 @@ *---------------------------------------------------------------------- */ -void XThread_RegisterThread(Tcl_Interp *interp) +void +XThread_RegisterThread(Tcl_Interp *interp) { ThreadSpecificData* tsdPtr = TCL_TSD_INIT(&dataKey); @@ -126,7 +122,8 @@ *---------------------------------------------------------------------- */ -void XThread_UnregisterThread() +void +XThread_UnregisterThread() { ThreadSpecificData* tsdPtr = TCL_TSD_INIT(&dataKey); @@ -158,7 +155,8 @@ *---------------------------------------------------------------------- */ -void XThread_EvalInThread(Tcl_ThreadId threadId, const char *script, int flags) +void +XThread_EvalInThread(Tcl_ThreadId threadId, const char *script, int flags) { ThreadSendData *sendPtr; int len = strlen(script); Copied: branches/team/elbunce/iaxclient/contrib/tcl/build-iaxclient.txt (from rev 1427, trunk/contrib/tcl/build-iaxclient.txt) =================================================================== --- branches/team/elbunce/iaxclient/contrib/tcl/build-iaxclient.txt (rev 0) +++ branches/team/elbunce/iaxclient/contrib/tcl/build-iaxclient.txt 2008-05-04 15:33:56 UTC (rev 1428) @@ -0,0 +1,78 @@ + +My own HOWTO of how I built all this stuff +------------------------------------------ + +Linux/Unix: +----------- + +1) Portaudio: +./configure --disable-shared --without-jack +make +make install + +2) Speex: +./configure --disable-shared +make +make install + +for the external libs. For iaxclient I do: + +./configure --without-ogg --without-theora --without-vidcap \ + --disable-video --disable-clients --disable-shared + +etc. The tcl package should build as usual using ./configure && make. +You may need to edit configure.in since I have added -lasound which +I really don't know the details of. Don't forget to use autconf after +editing. I read somewhere that setting + +export LDFLAGS="-Wl,-static" + +can be helpful to force linking to static libs. Use this *only* for the +tcl package. Noted that ./configure bails with hese flags. + + +MacOSX 10.5 +----------- + +1) pkg-config: +Installed darwinports and|or fink and be sure to get pkgconfig as well + +2) Portaudio: +http://www.portaudio.com/archives/pa_stable_v19_20071207.tar.gz +#export CFLAGS="-isysroot /Developer/SDKs/MacOSX10.4u.sdk -mmacosx-version-min=10.4" +./configure --disable-shared && make install + +3) Speex: +http://downloads.xiph.org/releases/speex/speex-1.2beta3.tar.gz +#export CFLAGS="-arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk -mmacosx-version-min=10.4" +./configure --disable-shared && make install + +4) iaxclient 2.1beta3: + PKG_CONFIG path to pkg-config utility +export PKG_CONFIG=`which pkg-config` +export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/ +./autogen.sh +./configure --without-ogg --without-theora --without-vidcap \ + --disable-video --disable-clients --disable-shared +make +ll lib/.libs/ +make install + +For the actual tcl package you have two options: +1) use the Xcode project +2) use the TEA configure/make system as: + ./configure --prefix=/usr/local --libdir=/Library/Tcl --with-tcl=/Library/Frameworks/Tcl.framework --with-tclinclude=/Library/Frameworks/Tcl.framework/Headers --enable-threads + make + +Alternatively you can create a separate build directory. +cd iaxclient/contrib/tcl/ +mkdir build +cd build +../configure ... +I haven't figured out how to make a universal build since portaudio (?) +complains when setting export CFLAGS="-arch ppc -arch i386" + + +Windows: +-------- + Modified: branches/team/elbunce/iaxclient/contrib/tcl/configure =================================================================== --- branches/team/elbunce/iaxclient/contrib/tcl/configure 2008-04-24 18:58:00 UTC (rev 1427) +++ branches/team/elbunce/iaxclient/contrib/tcl/configure 2008-05-04 15:33:56 UTC (rev 1428) @@ -1,9 +1,8 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.57 for iaxclient 0.2. +# Generated by GNU Autoconf 2.59 for tcliaxclient 0.2. # -# Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002 -# Free Software Foundation, Inc. +# Copyright (C) 2003 Free Software Foundation, Inc. # This configure script is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. ## --------------------- ## @@ -20,9 +19,10 @@ elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then set -o posix fi +DUALCASE=1; export DUALCASE # for MKS sh # Support unset when possible. -if (FOO=FOO; unset FOO) >/dev/null 2>&1; then +if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then as_unset=unset else as_unset=false @@ -41,7 +41,7 @@ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ LC_TELEPHONE LC_TIME do - if (set +x; test -n "`(eval $as_var=C; export $as_var) 2>&1`"); then + if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then eval $as_var=C; export $as_var else $as_unset $as_var @@ -218,16 +218,17 @@ if mkdir -p . 2>/dev/null; then as_mkdir_p=: else + test -d ./-p && rmdir ./-p as_mkdir_p=false fi as_executable_p="test -f" # Sed expression to map a string onto a valid CPP name. -as_tr_cpp="sed y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g" +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. -as_tr_sh="sed y%*+%pp%;s%[^_$as_cr_alnum]%_%g" +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" # IFS @@ -264,10 +265,10 @@ : ${ac_max_here_lines=38} # Identity of this package. -PACKAGE_NAME='iaxclient' -PACKAGE_TARNAME='iaxclient' +PACKAGE_NAME='tcliaxclient' +PACKAGE_TARNAME='tcliaxclient' PACKAGE_VERSION='0.2' -PACKAGE_STRING='iaxclient 0.2' +PACKAGE_STRING='tcliaxclient 0.2' PACKAGE_BUGREPORT='' # Factoring default headers for most tests. @@ -666,7 +667,7 @@ # Be sure to have absolute paths. for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ - localstatedir libdir includedir oldincludedir infodir mandir + localstatedir libdir includedir oldincludedir infodir mandir do eval ac_val=$`echo $ac_var` case $ac_val in @@ -706,10 +707,10 @@ # Try the directory containing this script, then its parent. ac_confdir=`(dirname "$0") 2>/dev/null || $as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$0" : 'X\(//\)[^/]' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || + X"$0" : 'X\(//\)[^/]' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| \ + . : '\(.\)' 2>/dev/null || echo X"$0" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } @@ -776,7 +777,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures iaxclient 0.2 to adapt to many kinds of systems. +\`configure' configures tcliaxclient 0.2 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -801,9 +802,9 @@ cat <<_ACEOF Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] + [$ac_default_prefix] --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [PREFIX] + [PREFIX] By default, \`make install' will install all the files in \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify @@ -833,7 +834,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of iaxclient 0.2:";; + short | recursive ) echo "Configuration of tcliaxclient 0.2:";; esac cat <<\_ACEOF @@ -902,13 +903,46 @@ ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_builddir$srcdir ;; esac -# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be -# absolute. -ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd` -ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd` -ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd` -ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd` +# Do not use `cd foo && pwd` to compute absolute paths, because +# the directories may not exist. +case `pwd` in +.) ac_abs_builddir="$ac_dir";; +*) + case "$ac_dir" in + .) ac_abs_builddir=`pwd`;; + [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; + *) ac_abs_builddir=`pwd`/"$ac_dir";; + esac;; +esac +case $ac_abs_builddir in +.) ac_abs_top_builddir=${ac_top_builddir}.;; +*) + case ${ac_top_builddir}. in + .) ac_abs_top_builddir=$ac_abs_builddir;; + [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; + *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; + esac;; +esac +case $ac_abs_builddir in +.) ac_abs_srcdir=$ac_srcdir;; +*) + case $ac_srcdir in + .) ac_abs_srcdir=$ac_abs_builddir;; + [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; + *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; + esac;; +esac +case $ac_abs_builddir in +.) ac_abs_top_srcdir=$ac_top_srcdir;; +*) + case $ac_top_srcdir in + .) ac_abs_top_srcdir=$ac_abs_builddir;; + [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; + *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; + esac;; +esac + cd $ac_dir # Check for guested configure; otherwise get Cygnus style configure. if test -f $ac_srcdir/configure.gnu; then @@ -918,7 +952,7 @@ echo $SHELL $ac_srcdir/configure --help=recursive elif test -f $ac_srcdir/configure.ac || - test -f $ac_srcdir/configure.in; then + test -f $ac_srcdir/configure.in; then echo $ac_configure --help else @@ -931,11 +965,10 @@ test -n "$ac_init_help" && exit 0 if $ac_init_version; then cat <<\_ACEOF -iaxclient configure 0.2 -generated by GNU Autoconf 2.57 +tcliaxclient configure 0.2 +generated by GNU Autoconf 2.59 -Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002 -Free Software Foundation, Inc. +Copyright (C) 2003 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. _ACEOF @@ -946,8 +979,8 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by iaxclient $as_me 0.2, which was -generated by GNU Autoconf 2.57. Invocation command line was +It was created by tcliaxclient $as_me 0.2, which was +generated by GNU Autoconf 2.59. Invocation command line was $ $0 $@ @@ -1024,19 +1057,19 @@ 2) ac_configure_args1="$ac_configure_args1 '$ac_arg'" if test $ac_must_keep_next = true; then - ac_must_keep_next=false # Got value, back to normal. + ac_must_keep_next=false # Got value, back to normal. else - case $ac_arg in - *=* | --config-cache | -C | -disable-* | --disable-* \ - | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ - | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ - | -with-* | --with-* | -without-* | --without-* | --x) - case "$ac_configure_args0 " in - "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; - esac - ;; - -* ) ac_must_keep_next=true ;; - esac + case $ac_arg in + *=* | --config-cache | -C | -disable-* | --disable-* \ + | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ + | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ + | -with-* | --with-* | -without-* | --without-* | --x) + case "$ac_configure_args0 " in + "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; + esac + ;; + -* ) ac_must_keep_next=true ;; + esac fi ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" # Get rid of the leading space. @@ -1070,12 +1103,12 @@ case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in *ac_space=\ *) sed -n \ - "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" + "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" ;; *) sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" + "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" ;; esac; } @@ -1104,7 +1137,7 @@ for ac_var in $ac_subst_files do eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" + echo "$ac_var='"'"'$ac_val'"'"'" done | sort echo fi @@ -1123,7 +1156,7 @@ echo "$as_me: caught signal $ac_signal" echo "$as_me: exit $exit_status" } >&5 - rm -f core core.* *.core && + rm -f core *.core && rm -rf conftest* confdefs* conf$$* $ac_clean_files && exit $exit_status ' 0 @@ -1203,7 +1236,7 @@ # value. ac_cache_corrupted=false for ac_var in `(set) 2>&1 | - sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do + sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do eval ac_old_set=\$ac_cv_env_${ac_var}_set eval ac_new_set=\$ac_env_${ac_var}_set eval ac_old_val="\$ac_cv_env_${ac_var}_value" @@ -1220,13 +1253,13 @@ ,);; *) if test "x$ac_old_val" != "x$ac_new_val"; then - { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 + { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} - { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 + { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 echo "$as_me: former value: $ac_old_val" >&2;} - { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 + { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 echo "$as_me: current value: $ac_new_val" >&2;} - ac_cache_corrupted=: + ac_cache_corrupted=: fi;; esac # Pass precious variables to config.status. @@ -2027,7 +2060,6 @@ (exit $ac_status); } cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -2047,8 +2079,8 @@ # Try to create an executable without -o first, disregard a.out. # It will help us diagnose broken compilers, and finding out an intuition # of exeext. -echo "$as_me:$LINENO: checking for C compiler default output" >&5 -echo $ECHO_N "checking for C compiler default output... $ECHO_C" >&6 +echo "$as_me:$LINENO: checking for C compiler default output file name" >&5 +echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6 ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5 (eval $ac_link_default) 2>&5 @@ -2068,23 +2100,23 @@ test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) - ;; + ;; conftest.$ac_ext ) - # This is the source file. - ;; + # This is the source file. + ;; [ab].out ) - # We found the default executable, but exeext='' is most - # certainly right. - break;; + # We found the default executable, but exeext='' is most + # certainly right. + break;; *.* ) - ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - # FIXME: I believe we export ac_cv_exeext for Libtool, - # but it would be cool to find out if it's true. Does anybody - # maintain Libtool? --akim. - export ac_cv_exeext - break;; + ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` + # FIXME: I believe we export ac_cv_exeext for Libtool, + # but it would be cool to find out if it's true. Does anybody + # maintain Libtool? --akim. + export ac_cv_exeext + break;; * ) - break;; + break;; esac done else @@ -2158,8 +2190,8 @@ case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;; *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - export ac_cv_exeext - break;; + export ac_cv_exeext + break;; * ) break;; esac done @@ -2184,7 +2216,6 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -2235,7 +2266,6 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -2255,15 +2285,25 @@ _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&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 -s conftest.$ac_objext' + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&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' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_compiler_gnu=yes else @@ -2272,7 +2312,7 @@ ac_compiler_gnu=no fi -rm -f conftest.$ac_objext conftest.$ac_ext +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi @@ -2288,7 +2328,6 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -2305,15 +2344,25 @@ _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&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 -s conftest.$ac_objext' + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&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' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_prog_cc_g=yes else @@ -2322,7 +2371,7 @@ ac_cv_prog_cc_g=no fi -rm -f conftest.$ac_objext conftest.$ac_ext +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 echo "${ECHO_T}$ac_cv_prog_cc_g" >&6 @@ -2349,7 +2398,6 @@ ac_cv_prog_cc_stdc=no ac_save_CC=$CC cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -2377,6 +2425,16 @@ va_end (v); return s; } + +/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has + function prototypes and stuff, but not '\xHH' hex character constants. + These don't provoke an error unfortunately, instead are silently treated + as 'x'. The following induces an error, until -std1 is added to get + proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an + array size at least. It's necessary to write '\x00'==0 to get something + that's true only with -std1. */ +int osf4_cc_array ['\x00' == 0 ? 1 : -1]; + int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; @@ -2403,15 +2461,25 @@ CC="$ac_save_CC $ac_arg" rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&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 -s conftest.$ac_objext' + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&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' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_prog_cc_stdc=$ac_arg break @@ -2420,7 +2488,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f conftest.$ac_objext +rm -f conftest.err conftest.$ac_objext done rm -f conftest.$ac_ext conftest.$ac_objext CC=$ac_save_CC @@ -2448,19 +2516,28 @@ _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&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 -s conftest.$ac_objext' + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&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' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then for ac_declaration in \ - ''\ - '#include <stdlib.h>' \ + '' \ 'extern "C" void std::exit (int) throw (); using std::exit;' \ 'extern "C" void std::exit (int); using std::exit;' \ 'extern "C" void exit (int) throw ();' \ @@ -2468,14 +2545,13 @@ 'void exit (int);' do cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ +$ac_declaration #include <stdlib.h> -$ac_declaration int main () { @@ -2486,15 +2562,25 @@ _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&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 -s conftest.$ac_objext' + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&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' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then : else @@ -2503,9 +2589,8 @@ continue fi -rm -f conftest.$ac_objext conftest.$ac_ext +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -2522,15 +2607,25 @@ _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&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 -s conftest.$ac_objext' + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&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' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then break else @@ -2538,7 +2633,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f conftest.$ac_objext conftest.$ac_ext +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext done rm -f conftest* if test -n "$ac_declaration"; then @@ -2552,7 +2647,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f conftest.$ac_objext conftest.$ac_ext +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -2587,7 +2682,6 @@ # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -2598,7 +2692,7 @@ #else # include <assert.h> #endif - Syntax error + Syntax error _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 @@ -2610,6 +2704,7 @@ (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 @@ -2630,7 +2725,6 @@ # OK, works on sane cases. Now check whether non-existent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -2648,6 +2742,7 @@ (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 @@ -2694,7 +2789,6 @@ # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -2705,7 +2799,7 @@ #else # include <assert.h> #endif - Syntax error + Syntax error _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 @@ -2717,6 +2811,7 @@ (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 @@ -2737,7 +2832,6 @@ # OK, works on sane cases. Now check whether non-existent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -2755,6 +2849,7 @@ (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 @@ -2805,6 +2900,7 @@ # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag # AFS /usr/afsws/bin/install, which mishandles nonexistent args # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" +# OS/2's system install, which has a completely different semantic # ./install, which can be erroneously created by make from ./install.sh. echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6 @@ -2821,6 +2917,7 @@ case $as_dir/ in ./ | .// | /cC/* | \ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ + ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \ /usr/ucb/* ) ;; *) # OSF1 and SCO ODT 3.0 have their own names for install. @@ -2828,20 +2925,20 @@ # by default. for ac_prog in ginstall scoinst install; do for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then - if test $ac_prog = install && - grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - elif test $ac_prog = install && - grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # program-specific install script used by HP pwplus--don't use. - : - else - ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" - break 3 - fi - fi + if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then + if test $ac_prog = install && + grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # AIX install. It has an incompatible calling convention. + : + elif test $ac_prog = install && + grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # program-specific install script used by HP pwplus--don't use. + : + else + ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" + break 3 + fi + fi done done ;; @@ -2878,7 +2975,7 @@ echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6 -set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,./+-,__p_,'` +set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'` if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -3021,7 +3118,6 @@ echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -3042,15 +3138,25 @@ _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&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 -s conftest.$ac_objext' + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&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' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_header_stdc=yes else @@ -3059,12 +3165,11 @@ ac_cv_header_stdc=no fi -rm -f conftest.$ac_objext conftest.$ac_ext +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -3086,7 +3191,6 @@ if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -3111,7 +3215,6 @@ : else cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -3123,9 +3226,9 @@ # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) #else # define ISLOWER(c) \ - (('a' <= (c) && (c) <= 'i') \ - || ('j' <= (c) && (c) <= 'r') \ - || ('s' <= (c) && (c) <= 'z')) + (('a' <= (c) && (c) <= 'i') \ + || ('j' <= (c) && (c) <= 'r') \ + || ('s' <= (c) && (c) <= 'z')) # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) #endif @@ -3136,7 +3239,7 @@ int i; for (i = 0; i < 256; i++) if (XOR (islower (i), ISLOWER (i)) - || toupper (i) != TOUPPER (i)) + || toupper (i) != TOUPPER (i)) exit(2); exit (0); } @@ -3161,7 +3264,7 @@ ( exit $ac_status ) ac_cv_header_stdc=no fi -rm -f core core.* *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi fi fi @@ -3186,7 +3289,7 @@ for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ - inttypes.h stdint.h unistd.h + inttypes.h stdint.h unistd.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_h... [truncated message content] |