[asterisk-commits] twilson: branch murf/threadpool r158753 - in /team/murf/threadpool: ./ agi/ a...

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Sat Nov 22 12:57:33 CST 2008


Author: twilson
Date: Sat Nov 22 12:57:31 2008
New Revision: 158753

URL: http://svn.digium.com/view/asterisk?view=rev&rev=158753
Log:
Bring this back up to date with trunk, fix conflicts, re-automergify

Added:
    team/murf/threadpool/UPGRADE-1.6.txt
      - copied unchanged from r158723, trunk/UPGRADE-1.6.txt
    team/murf/threadpool/build_tools/get_documentation
      - copied unchanged from r158723, trunk/build_tools/get_documentation
    team/murf/threadpool/configs/cli_aliases.conf.sample
      - copied unchanged from r158723, trunk/configs/cli_aliases.conf.sample
    team/murf/threadpool/contrib/init.d/rc.archlinux.asterisk
      - copied unchanged from r158723, trunk/contrib/init.d/rc.archlinux.asterisk
    team/murf/threadpool/doc/appdocsxml.dtd
      - copied unchanged from r158723, trunk/doc/appdocsxml.dtd
    team/murf/threadpool/include/asterisk/buildinfo.h
      - copied unchanged from r158723, trunk/include/asterisk/buildinfo.h
    team/murf/threadpool/include/asterisk/xml.h
      - copied unchanged from r158723, trunk/include/asterisk/xml.h
    team/murf/threadpool/include/asterisk/xmldoc.h
      - copied unchanged from r158723, trunk/include/asterisk/xmldoc.h
    team/murf/threadpool/main/xml.c
      - copied unchanged from r158723, trunk/main/xml.c
    team/murf/threadpool/main/xmldoc.c
      - copied unchanged from r158723, trunk/main/xmldoc.c
    team/murf/threadpool/res/res_clialiases.c
      - copied unchanged from r158723, trunk/res/res_clialiases.c
    team/murf/threadpool/res/res_timing_timerfd.c
      - copied unchanged from r158723, trunk/res/res_timing_timerfd.c
Modified:
    team/murf/threadpool/   (props changed)
    team/murf/threadpool/CHANGES
    team/murf/threadpool/Makefile
    team/murf/threadpool/Makefile.moddir_rules
    team/murf/threadpool/Makefile.rules
    team/murf/threadpool/README
    team/murf/threadpool/UPGRADE-1.2.txt
    team/murf/threadpool/UPGRADE-1.4.txt
    team/murf/threadpool/UPGRADE.txt   (contents, props changed)
    team/murf/threadpool/agi/eagi-sphinx-test.c
    team/murf/threadpool/agi/eagi-test.c
    team/murf/threadpool/apps/app_adsiprog.c
    team/murf/threadpool/apps/app_alarmreceiver.c
    team/murf/threadpool/apps/app_amd.c
    team/murf/threadpool/apps/app_authenticate.c
    team/murf/threadpool/apps/app_cdr.c
    team/murf/threadpool/apps/app_chanisavail.c
    team/murf/threadpool/apps/app_channelredirect.c
    team/murf/threadpool/apps/app_chanspy.c
    team/murf/threadpool/apps/app_controlplayback.c
    team/murf/threadpool/apps/app_dahdibarge.c
    team/murf/threadpool/apps/app_dahdiras.c
    team/murf/threadpool/apps/app_dahdiscan.c
    team/murf/threadpool/apps/app_db.c
    team/murf/threadpool/apps/app_dial.c
    team/murf/threadpool/apps/app_dictate.c
    team/murf/threadpool/apps/app_directed_pickup.c
    team/murf/threadpool/apps/app_directory.c
    team/murf/threadpool/apps/app_disa.c
    team/murf/threadpool/apps/app_dumpchan.c
    team/murf/threadpool/apps/app_echo.c
    team/murf/threadpool/apps/app_exec.c
    team/murf/threadpool/apps/app_fax.c
    team/murf/threadpool/apps/app_festival.c
    team/murf/threadpool/apps/app_flash.c
    team/murf/threadpool/apps/app_followme.c
    team/murf/threadpool/apps/app_forkcdr.c
    team/murf/threadpool/apps/app_getcpeid.c
    team/murf/threadpool/apps/app_ices.c
    team/murf/threadpool/apps/app_image.c
    team/murf/threadpool/apps/app_ivrdemo.c
    team/murf/threadpool/apps/app_jack.c
    team/murf/threadpool/apps/app_macro.c
    team/murf/threadpool/apps/app_meetme.c
    team/murf/threadpool/apps/app_milliwatt.c
    team/murf/threadpool/apps/app_mixmonitor.c
    team/murf/threadpool/apps/app_morsecode.c
    team/murf/threadpool/apps/app_mp3.c
    team/murf/threadpool/apps/app_nbscat.c
    team/murf/threadpool/apps/app_osplookup.c
    team/murf/threadpool/apps/app_page.c
    team/murf/threadpool/apps/app_parkandannounce.c
    team/murf/threadpool/apps/app_playback.c
    team/murf/threadpool/apps/app_privacy.c
    team/murf/threadpool/apps/app_queue.c
    team/murf/threadpool/apps/app_read.c
    team/murf/threadpool/apps/app_readexten.c
    team/murf/threadpool/apps/app_readfile.c
    team/murf/threadpool/apps/app_record.c
    team/murf/threadpool/apps/app_sayunixtime.c
    team/murf/threadpool/apps/app_senddtmf.c
    team/murf/threadpool/apps/app_sendtext.c
    team/murf/threadpool/apps/app_setcallerid.c
    team/murf/threadpool/apps/app_skel.c
    team/murf/threadpool/apps/app_sms.c
    team/murf/threadpool/apps/app_softhangup.c
    team/murf/threadpool/apps/app_stack.c
    team/murf/threadpool/apps/app_system.c
    team/murf/threadpool/apps/app_talkdetect.c
    team/murf/threadpool/apps/app_test.c
    team/murf/threadpool/apps/app_transfer.c
    team/murf/threadpool/apps/app_url.c
    team/murf/threadpool/apps/app_userevent.c
    team/murf/threadpool/apps/app_verbose.c
    team/murf/threadpool/apps/app_voicemail.c
    team/murf/threadpool/apps/app_waitforring.c
    team/murf/threadpool/apps/app_waitforsilence.c
    team/murf/threadpool/apps/app_waituntil.c
    team/murf/threadpool/apps/app_while.c
    team/murf/threadpool/apps/app_zapateller.c
    team/murf/threadpool/autoconf/ast_ext_lib.m4
    team/murf/threadpool/autoconf/ast_gcc_attribute.m4
    team/murf/threadpool/bootstrap.sh
    team/murf/threadpool/build_tools/make_buildopts_h
    team/murf/threadpool/build_tools/make_version
    team/murf/threadpool/build_tools/menuselect-deps.in
    team/murf/threadpool/cdr/Makefile
    team/murf/threadpool/cdr/cdr_adaptive_odbc.c
    team/murf/threadpool/cdr/cdr_csv.c
    team/murf/threadpool/cdr/cdr_custom.c
    team/murf/threadpool/cdr/cdr_manager.c
    team/murf/threadpool/cdr/cdr_odbc.c
    team/murf/threadpool/cdr/cdr_pgsql.c
    team/murf/threadpool/cdr/cdr_radius.c
    team/murf/threadpool/cdr/cdr_sqlite.c
    team/murf/threadpool/cdr/cdr_sqlite3_custom.c
    team/murf/threadpool/cdr/cdr_tds.c
    team/murf/threadpool/channels/   (props changed)
    team/murf/threadpool/channels/Makefile
    team/murf/threadpool/channels/chan_agent.c
    team/murf/threadpool/channels/chan_alsa.c
    team/murf/threadpool/channels/chan_console.c
    team/murf/threadpool/channels/chan_dahdi.c
    team/murf/threadpool/channels/chan_h323.c
    team/murf/threadpool/channels/chan_iax2.c
    team/murf/threadpool/channels/chan_local.c
    team/murf/threadpool/channels/chan_mgcp.c
    team/murf/threadpool/channels/chan_misdn.c
    team/murf/threadpool/channels/chan_oss.c
    team/murf/threadpool/channels/chan_sip.c
    team/murf/threadpool/channels/chan_skinny.c
    team/murf/threadpool/channels/chan_usbradio.c
    team/murf/threadpool/channels/chan_vpb.cc
    team/murf/threadpool/channels/iax2-provision.c
    team/murf/threadpool/channels/misdn/   (props changed)
    team/murf/threadpool/channels/misdn/Makefile
    team/murf/threadpool/channels/misdn/isdn_lib.c
    team/murf/threadpool/channels/misdn/isdn_lib.h
    team/murf/threadpool/channels/misdn/isdn_lib_intern.h
    team/murf/threadpool/channels/misdn_config.c
    team/murf/threadpool/codecs/gsm/Makefile
    team/murf/threadpool/codecs/gsm/src/   (props changed)
    team/murf/threadpool/codecs/lpc10/chanwr.c
    team/murf/threadpool/configs/cdr_adaptive_odbc.conf.sample
    team/murf/threadpool/configs/chan_dahdi.conf.sample
    team/murf/threadpool/configs/extensions.conf.sample
    team/murf/threadpool/configs/features.conf.sample
    team/murf/threadpool/configs/func_odbc.conf.sample
    team/murf/threadpool/configs/phoneprov.conf.sample
    team/murf/threadpool/configs/sip.conf.sample
    team/murf/threadpool/configs/voicemail.conf.sample
    team/murf/threadpool/configure
    team/murf/threadpool/configure.ac
    team/murf/threadpool/contrib/asterisk-ng-doxygen
    team/murf/threadpool/doc/   (props changed)
    team/murf/threadpool/doc/tex/asterisk-conf.tex
    team/murf/threadpool/doc/valgrind.txt
    team/murf/threadpool/formats/format_gsm.c
    team/murf/threadpool/formats/format_ogg_vorbis.c
    team/murf/threadpool/formats/format_wav.c
    team/murf/threadpool/formats/format_wav_gsm.c
    team/murf/threadpool/funcs/func_base64.c
    team/murf/threadpool/funcs/func_blacklist.c
    team/murf/threadpool/funcs/func_callerid.c
    team/murf/threadpool/funcs/func_cdr.c
    team/murf/threadpool/funcs/func_channel.c
    team/murf/threadpool/funcs/func_config.c
    team/murf/threadpool/funcs/func_cut.c
    team/murf/threadpool/funcs/func_db.c
    team/murf/threadpool/funcs/func_devstate.c
    team/murf/threadpool/funcs/func_dialgroup.c
    team/murf/threadpool/funcs/func_dialplan.c
    team/murf/threadpool/funcs/func_enum.c
    team/murf/threadpool/funcs/func_env.c
    team/murf/threadpool/funcs/func_extstate.c
    team/murf/threadpool/funcs/func_global.c
    team/murf/threadpool/funcs/func_groupcount.c
    team/murf/threadpool/funcs/func_iconv.c
    team/murf/threadpool/funcs/func_lock.c
    team/murf/threadpool/funcs/func_logic.c
    team/murf/threadpool/funcs/func_math.c
    team/murf/threadpool/funcs/func_md5.c
    team/murf/threadpool/funcs/func_module.c
    team/murf/threadpool/funcs/func_odbc.c
    team/murf/threadpool/funcs/func_rand.c
    team/murf/threadpool/funcs/func_realtime.c
    team/murf/threadpool/funcs/func_sha1.c
    team/murf/threadpool/funcs/func_shell.c
    team/murf/threadpool/funcs/func_speex.c
    team/murf/threadpool/funcs/func_strings.c
    team/murf/threadpool/funcs/func_timeout.c
    team/murf/threadpool/funcs/func_uri.c
    team/murf/threadpool/funcs/func_version.c
    team/murf/threadpool/funcs/func_vmcount.c
    team/murf/threadpool/funcs/func_volume.c
    team/murf/threadpool/include/asterisk.h
    team/murf/threadpool/include/asterisk/_private.h
    team/murf/threadpool/include/asterisk/agi.h
    team/murf/threadpool/include/asterisk/app.h
    team/murf/threadpool/include/asterisk/astobj2.h
    team/murf/threadpool/include/asterisk/autoconfig.h.in
    team/murf/threadpool/include/asterisk/channel.h
    team/murf/threadpool/include/asterisk/cli.h
    team/murf/threadpool/include/asterisk/compat.h
    team/murf/threadpool/include/asterisk/compiler.h
    team/murf/threadpool/include/asterisk/config.h
    team/murf/threadpool/include/asterisk/devicestate.h
    team/murf/threadpool/include/asterisk/dial.h
    team/murf/threadpool/include/asterisk/extconf.h
    team/murf/threadpool/include/asterisk/features.h
    team/murf/threadpool/include/asterisk/file.h
    team/murf/threadpool/include/asterisk/frame.h
    team/murf/threadpool/include/asterisk/indications.h
    team/murf/threadpool/include/asterisk/logger.h
    team/murf/threadpool/include/asterisk/module.h
    team/murf/threadpool/include/asterisk/pbx.h
    team/murf/threadpool/include/asterisk/sched.h
    team/murf/threadpool/include/asterisk/strings.h
    team/murf/threadpool/include/asterisk/term.h
    team/murf/threadpool/include/asterisk/timing.h
    team/murf/threadpool/main/Makefile
    team/murf/threadpool/main/app.c
    team/murf/threadpool/main/ast_expr2f.c
    team/murf/threadpool/main/asterisk.c
    team/murf/threadpool/main/astmm.c
    team/murf/threadpool/main/astobj2.c
    team/murf/threadpool/main/buildinfo.c
    team/murf/threadpool/main/cdr.c
    team/murf/threadpool/main/channel.c
    team/murf/threadpool/main/cli.c
    team/murf/threadpool/main/config.c
    team/murf/threadpool/main/db1-ast/Makefile
    team/murf/threadpool/main/db1-ast/btree/   (props changed)
    team/murf/threadpool/main/db1-ast/db/   (props changed)
    team/murf/threadpool/main/db1-ast/hash/   (props changed)
    team/murf/threadpool/main/db1-ast/hash/hash_page.c
    team/murf/threadpool/main/db1-ast/mpool/   (props changed)
    team/murf/threadpool/main/db1-ast/recno/   (props changed)
    team/murf/threadpool/main/devicestate.c
    team/murf/threadpool/main/dial.c
    team/murf/threadpool/main/dnsmgr.c
    team/murf/threadpool/main/editline/readline.c
    team/murf/threadpool/main/features.c
    team/murf/threadpool/main/file.c
    team/murf/threadpool/main/frame.c
    team/murf/threadpool/main/http.c
    team/murf/threadpool/main/indications.c
    team/murf/threadpool/main/logger.c
    team/murf/threadpool/main/manager.c
    team/murf/threadpool/main/pbx.c
    team/murf/threadpool/main/rtp.c
    team/murf/threadpool/main/stdtime/   (props changed)
    team/murf/threadpool/main/stdtime/Makefile
    team/murf/threadpool/main/taskprocessor.c
    team/murf/threadpool/main/term.c
    team/murf/threadpool/main/udptl.c
    team/murf/threadpool/main/utils.c
    team/murf/threadpool/makeopts.in
    team/murf/threadpool/pbx/Makefile
    team/murf/threadpool/pbx/ael/   (props changed)
    team/murf/threadpool/pbx/pbx_ael.c
    team/murf/threadpool/pbx/pbx_config.c
    team/murf/threadpool/pbx/pbx_dundi.c
    team/murf/threadpool/pbx/pbx_lua.c
    team/murf/threadpool/phoneprov/polycom_line.xml
    team/murf/threadpool/res/Makefile
    team/murf/threadpool/res/ael/   (props changed)
    team/murf/threadpool/res/ael/ael.flex
    team/murf/threadpool/res/ael/ael.tab.c
    team/murf/threadpool/res/ael/ael.y
    team/murf/threadpool/res/ael/ael_lex.c
    team/murf/threadpool/res/ael/pval.c
    team/murf/threadpool/res/ais/   (props changed)
    team/murf/threadpool/res/ais/evt.c
    team/murf/threadpool/res/res_agi.c
    team/murf/threadpool/res/res_config_odbc.c
    team/murf/threadpool/res/res_config_sqlite.c
    team/murf/threadpool/res/res_crypto.c
    team/murf/threadpool/res/res_http_post.c
    team/murf/threadpool/res/res_indications.c
    team/murf/threadpool/res/res_jabber.c
    team/murf/threadpool/res/res_musiconhold.c
    team/murf/threadpool/res/res_odbc.c
    team/murf/threadpool/res/res_phoneprov.c
    team/murf/threadpool/res/res_realtime.c
    team/murf/threadpool/res/res_timing_dahdi.c
    team/murf/threadpool/res/res_timing_pthread.c
    team/murf/threadpool/res/snmp/   (props changed)
    team/murf/threadpool/utils/astcanary.c
    team/murf/threadpool/utils/astman.c
    team/murf/threadpool/utils/extconf.c
    team/murf/threadpool/utils/frame.c
    team/murf/threadpool/utils/hashtest2.c
    team/murf/threadpool/utils/muted.c
    team/murf/threadpool/utils/stereorize.c
    team/murf/threadpool/utils/streamplayer.c

Propchange: team/murf/threadpool/
------------------------------------------------------------------------------
    automerge = *

Propchange: team/murf/threadpool/
------------------------------------------------------------------------------
Binary property 'branch-1.4-blocked' - no diff available.

Propchange: team/murf/threadpool/
------------------------------------------------------------------------------
Binary property 'branch-1.4-merged' - no diff available.

Propchange: team/murf/threadpool/
------------------------------------------------------------------------------
    reviewboard:url = http://reviewboard.digium.com

Propchange: team/murf/threadpool/
------------------------------------------------------------------------------
--- svnmerge-integrated (original)
+++ svnmerge-integrated Sat Nov 22 12:57:31 2008
@@ -1,1 +1,1 @@
-/trunk:1-151850
+/trunk:1-158752

Modified: team/murf/threadpool/CHANGES
URL: http://svn.digium.com/view/asterisk/team/murf/threadpool/CHANGES?view=diff&rev=158753&r1=158752&r2=158753
==============================================================================
--- team/murf/threadpool/CHANGES (original)
+++ team/murf/threadpool/CHANGES Sat Nov 22 12:57:31 2008
@@ -1,3 +1,13 @@
+======================================================================
+===
+=== This file documents the new and/or enhanced functionality added in
+=== the Asterisk versions listed below. This file does NOT include
+=== changes in behavior that would not be backwards compatible with
+=== previous versions; for that information see the UPGRADE.txt file
+=== and the other UPGRADE files for older releases.
+===
+======================================================================
+
 ------------------------------------------------------------------------------
 --- Functionality changes from Asterisk 1.6.1 to Asterisk 1.6.2  -------------
 ------------------------------------------------------------------------------
@@ -11,6 +21,10 @@
    making the new/old message count available to local devices.
  * Added support for setting the domain in the URI for caller of an
    outbound call by using the SIPFROMDOMAIN channel variable.
+ * Added a new configuration option "remotesecret" for authentication to
+   remote services. For backwards compatibility, "secret" still has the
+   same function as before, but now you can configure both a remote secret and a
+   local secret for mutual authentication.
 
 Skinny Changes
 --------------
@@ -26,6 +40,13 @@
  * Permit the syntax and synopsis fields of the corresponding dialplan
    functions to be individually set from func_odbc.conf.
  * Added debugging CLI functions to func_odbc, 'odbc read' and 'odbc write'.
+ * func_odbc now may specify an insert query to execute, when the write query
+   affects 0 rows (usually indicating that no such row exists).
+ * Added a new dialplan function, LISTFILTER, which permits removing elements
+   from a set list, by name.  Uses the same general syntax as the existing CUT
+   and FIELDQTY dialplan functions, which also manage lists.
+ * Added REALTIME_FIELD and REALTIME_HASH, which should aid users in better
+   obtaining realtime data from the dialplan.
 
 Applications
 ------------
@@ -33,6 +54,9 @@
    using MeetMeAdmin.
  * app_authenticate now gives the ability to select a prompt other than
    the default.
+ * app_directory now pays attention to the searchcontexts setting in
+   voicemail.conf and will look through all contexts, if no context is
+   specified in the initial argument.
 
 Miscellaneous
 -------------
@@ -46,6 +70,8 @@
      same  =>     n,SomethingElse()
  * musiconhold.conf classes of type 'files' can now use relative directory paths,
    which are interpreted as relative to the astvarlibdir setting in asterisk.conf.
+ * All deprecated CLI commands are removed from the sourcecode. They are now handled
+   by the new clialiases module. See cli_aliases.conf.sample file.
 
 ------------------------------------------------------------------------------
 --- Functionality changes from Asterisk 1.6.0 to Asterisk 1.6.1  -------------
@@ -680,6 +706,7 @@
      WaitForRing() now takes floating pt timeout arg.
      SpeechBackground() -- clarified in the docstrings that the timeout is an integer seconds.
   * Added 's' option to Page application.
+  * Added an optional timeout argument to the Page application.
   * Added 'E', 'V', and 'P' commands to ExternalIVR.
   * Added 'o' and 'X' options to Chanspy.
   * Added a new dialplan application, Bridge, which allows you to bridge the
@@ -766,6 +793,7 @@
      the first one available.
   * Added cli command 'features reload' to reload call features from features.conf
   * Moved into core asterisk binary.
+  * Changed the default setting for featuredigittimeout to 2000 ms from 500 ms.
 
 Language Support Changes
 ------------------------
@@ -915,3 +943,11 @@
     consoles, you may want to try using this option. This option is enabled by default
     on Darwin systems since it is known that the Darwin poll() implementation has
     odd issues.
+
+Timer Changes
+--------------------
+* In addition to timing from DAHDI, there is a new timing module called
+  res_timing_timerfd. In order to use this, you must be running Linux with
+  a kernel version 2.6.25 or newer as well as glibc 2.8 or newer. The configure
+  script will be able to tell if you have the requirements. From menuselect, select
+  res_timing_timerfd from the Resource Modules menu.

Modified: team/murf/threadpool/Makefile
URL: http://svn.digium.com/view/asterisk/team/murf/threadpool/Makefile?view=diff&rev=158753&r1=158752&r2=158753
==============================================================================
--- team/murf/threadpool/Makefile (original)
+++ team/murf/threadpool/Makefile Sat Nov 22 12:57:31 2008
@@ -94,6 +94,7 @@
 export AWK
 export GREP
 export ID
+export MD5
 
 # even though we could use '-include makeopts' here, use a wildcard
 # lookup anyway, so that make won't try to build makeopts if it doesn't
@@ -106,6 +107,9 @@
 # CFLAGS and LDFLAGS in the COPTS and LDOPTS variables.
 ASTCFLAGS+=$(COPTS)
 ASTLDFLAGS+=$(LDOPTS)
+
+# libxml2 cflags
+ASTCFLAGS+=$(LIBXML2_INCLUDE)
 
 #Uncomment this to see all build commands instead of 'quiet' output
 NOISY_BUILD=yes
@@ -350,7 +354,7 @@
 	@echo " +               $(mK) install               +"  
 	@echo " +-------------------------------------------+"  
 
-_all: cleantest makeopts $(SUBDIRS)
+_all: cleantest makeopts $(SUBDIRS) doc/core-en_US.xml
 
 makeopts: configure
 	@echo "****"
@@ -439,7 +443,9 @@
 $(SUBDIRS_DIST_CLEAN):
 	@$(SUBMAKE) -C $(@:-dist-clean=) dist-clean
 
-clean: $(SUBDIRS_CLEAN)
+clean: $(SUBDIRS_CLEAN) _clean
+
+_clean:
 	rm -f defaults.h
 	rm -f include/asterisk/build.h
 	rm -f main/version.c
@@ -449,7 +455,7 @@
 
 dist-clean: distclean
 
-distclean: $(SUBDIRS_DIST_CLEAN) clean
+distclean: $(SUBDIRS_DIST_CLEAN) _clean
 	@$(MAKE) -C menuselect dist-clean
 	@$(MAKE) -C sounds dist-clean
 	rm -f menuselect.makeopts makeopts menuselect-tree menuselect.makedeps
@@ -482,6 +488,29 @@
 	done
 	mkdir -p $(DESTDIR)$(AGI_DIR)
 	$(MAKE) -C sounds install
+
+doc/core-en_US.xml: $(foreach dir,$(MOD_SUBDIRS),$(wildcard $(dir)/*.c) $(wildcard $(dir)/*.cc)) 
+	@echo -n "Building Documentation For: "
+	@echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" > $@
+	@echo "<!DOCTYPE docs SYSTEM \"appdocsxml.dtd\">" >> $@
+	@echo "<docs>" >> $@
+	@for x in $(MOD_SUBDIRS); do \
+		echo -n "$$x " ; \
+		for i in $$x/*.c; do \
+			$(AWK) -f build_tools/get_documentation $$i >> $@ ; \
+		done ; \
+	done
+	@echo
+	@echo "</docs>" >> $@
+
+validate-docs: doc/core-en_US.xml
+ifeq ($(XMLSTARLET),:)
+	@echo "---------------------------------------------------------------"
+	@echo "--- Please install xmlstarlet to validate the documentation ---"
+	@echo "---------------------------------------------------------------"
+else
+	$(XMLSTARLET) val -d doc/appdocsxml.dtd $<
+endif
 
 update: 
 	@if [ -d .svn ]; then \
@@ -531,12 +560,16 @@
 	if [ -n "$(OLDHEADERS)" ]; then \
 		rm -f $(addprefix $(DESTDIR)$(ASTHEADERDIR)/,$(OLDHEADERS)) ;\
 	fi
+	mkdir -p $(DESTDIR)$(ASTDATADIR)/documentation
+	mkdir -p $(DESTDIR)$(ASTDATADIR)/documentation/thirdparty
 	mkdir -p $(DESTDIR)$(ASTLOGDIR)/cdr-csv
 	mkdir -p $(DESTDIR)$(ASTLOGDIR)/cdr-custom
 	mkdir -p $(DESTDIR)$(ASTDATADIR)/keys
 	mkdir -p $(DESTDIR)$(ASTDATADIR)/firmware
 	mkdir -p $(DESTDIR)$(ASTDATADIR)/firmware/iax
 	mkdir -p $(DESTDIR)$(ASTMANDIR)/man8
+	$(INSTALL) -m 644 doc/core-*.xml $(DESTDIR)$(ASTDATADIR)/documentation
+	$(INSTALL) -m 644 doc/appdocsxml.dtd $(DESTDIR)$(ASTVARLIBDIR)/documentation
 	$(INSTALL) -m 644 keys/iaxtel.pub $(DESTDIR)$(ASTDATADIR)/keys
 	$(INSTALL) -m 644 keys/freeworlddialup.pub $(DESTDIR)$(ASTDATADIR)/keys
 	$(INSTALL) -m 644 doc/asterisk.8 $(DESTDIR)$(ASTMANDIR)/man8
@@ -658,7 +691,7 @@
 		echo "astrundir => $(ASTVARRUNDIR)" ; \
 		echo "astlogdir => $(ASTLOGDIR)" ; \
 		echo "" ; \
-		echo ";[options]" ; \
+		echo "[options]" ; \
 		echo ";verbose = 3" ; \
 		echo ";debug = 3" ; \
 		echo ";alwaysfork = yes ; same as -F at startup" ; \
@@ -688,6 +721,7 @@
 		echo ";runuser = asterisk ; The user to run as" ; \
 		echo ";rungroup = asterisk ; The group to run as" ; \
 		echo ";lightbackground = yes ; If your terminal is set for a light-colored background" ; \
+		echo "documentation_language = en_US ; Set the Language you want Documentation displayed in. Value is in the same format as locale names" ; \
 		echo "" ; \
 		echo "; Changing the following lines may compromise your security." ; \
 		echo ";[files]" ; \
@@ -780,6 +814,8 @@
 		elif [ -f /etc/SuSE-release -o -f /etc/novell-release ]; then \
 			$(INSTALL) -m 755 contrib/init.d/rc.suse.asterisk $(DESTDIR)/etc/init.d/asterisk; \
 			if [ -z "$(DESTDIR)" ]; then /sbin/chkconfig --add asterisk; fi; \
+		elif [ -f /etc/arch-release -o -f /etc/arch-release ]; then \
+			$(INSTALL) -m 755 contrib/init.d/rc.archlinux.asterisk $(DESTDIR)/etc/rc.d/asterisk; \
 		elif [ -f /etc/slackware-version ]; then \
 			echo "Slackware is not currently supported, although an init script does exist for it." \
 		else \
@@ -904,7 +940,7 @@
 asterisk.pdf:
 	$(MAKE) -C doc/tex asterisk.pdf
 
-.PHONY: menuselect menuselect.makeopts main sounds clean dist-clean distclean all prereqs cleantest uninstall _uninstall uninstall-all pdf dont-optimize $(SUBDIRS_INSTALL) $(SUBDIRS_DIST_CLEAN) $(SUBDIRS_CLEAN) $(SUBDIRS_UNINSTALL) $(SUBDIRS) $(MOD_SUBDIRS_EMBED_LDSCRIPT) $(MOD_SUBDIRS_EMBED_LDFLAGS) $(MOD_SUBDIRS_EMBED_LIBS) badshell installdirs
+.PHONY: menuselect menuselect.makeopts main sounds clean dist-clean distclean all prereqs cleantest uninstall _uninstall uninstall-all pdf dont-optimize $(SUBDIRS_INSTALL) $(SUBDIRS_DIST_CLEAN) $(SUBDIRS_CLEAN) $(SUBDIRS_UNINSTALL) $(SUBDIRS) $(MOD_SUBDIRS_EMBED_LDSCRIPT) $(MOD_SUBDIRS_EMBED_LDFLAGS) $(MOD_SUBDIRS_EMBED_LIBS) badshell installdirs validate-docs _clean
 
 FORCE:
 

Modified: team/murf/threadpool/Makefile.moddir_rules
URL: http://svn.digium.com/view/asterisk/team/murf/threadpool/Makefile.moddir_rules?view=diff&rev=158753&r1=158752&r2=158753
==============================================================================
--- team/murf/threadpool/Makefile.moddir_rules (original)
+++ team/murf/threadpool/Makefile.moddir_rules Sat Nov 22 12:57:31 2008
@@ -110,7 +110,7 @@
 	@for file in $(patsubst %,$(SUBDIR)/%,$(filter-out %.eo,$^)); do echo "INPUT (../$${file})" >> $@; done
 
 clean::
-	rm -f *.so *.o *.oo *.eo
+	rm -f *.so *.o *.oo *.eo *.i *.ii
 	rm -f .*.o.d .*.oo.d
 	rm -f *.s *.i
 	rm -f modules.link
@@ -124,6 +124,7 @@
 dist-clean::
 	rm -f .*.moduleinfo .moduleinfo
 	rm -f .*.makeopts .makeopts
+	rm -f .*.d
 
 .%.moduleinfo: %.c
 	@echo "<member name=\"$*\" displayname=\"$(shell $(GREP) -e AST_MODULE_INFO $< | head -n 1 | cut -d '"' -f 2)\" remove_on_change=\"$(SUBDIR)/$*.o $(SUBDIR)/$*.so\">" > $@

Modified: team/murf/threadpool/Makefile.rules
URL: http://svn.digium.com/view/asterisk/team/murf/threadpool/Makefile.rules?view=diff&rev=158753&r1=158752&r2=158753
==============================================================================
--- team/murf/threadpool/Makefile.rules (original)
+++ team/murf/threadpool/Makefile.rules Sat Nov 22 12:57:31 2008
@@ -3,7 +3,7 @@
 # 
 # Makefile rules
 #
-# Copyright (C) 2006, Digium, Inc.
+# Copyright (C) 2006-2008, Digium, Inc.
 #
 # Kevin P. Fleming <kpfleming at digium.com>
 #
@@ -11,7 +11,6 @@
 # the GNU General Public License
 #
 
-# Rules for various build phases.
 # Each command is preceded by a short comment on what to do.
 # Prefixing one or the other with @\# or @ or nothing makes the desired
 # behaviour. ECHO_PREFIX prefixes the comment, CMD_PREFIX prefixes the command.
@@ -21,15 +20,17 @@
 .PHONY: dist-clean
 
 # extra cflags to build dependencies. Recursively expanded.
-MAKE_DEPS= -MD -MT $@ -MF .$(subst /,_,$@).d -MP
+MAKE_DEPS=-MD -MT $@ -MF .$(subst /,_,$@).d -MP
 
 ifeq ($(NOISY_BUILD),)
     ECHO_PREFIX=@
     CMD_PREFIX=@
 else
-    ECHO_PREFIX=@\#
+    ECHO_PREFIX=@\# 
     CMD_PREFIX=
 endif
+
+OPTIMIZE?=-O6
 
 ifeq ($(findstring DONT_OPTIMIZE,$(MENUSELECT_CFLAGS)),)
     # More GSM codec optimization
@@ -38,30 +39,75 @@
     # ppro's, etc, as well as the AMD K6 and K7.  
     #K6OPT=-DK6OPT
 
-    OPTIMIZE?=-O6
     ASTCFLAGS+=$(OPTIMIZE)
 endif
 
-# build rules for various targets
-%.o: %.c
-	$(ECHO_PREFIX) echo "   [CC] $< -> $@"
-	$(CMD_PREFIX) $(CC) -o $@ -c $< $(PTHREAD_CFLAGS) $(ASTCFLAGS) $(MAKE_DEPS)
+# shortcuts for common combinations of flags; these must be recursively expanded so that
+# per-target settings will be applied
+CC_CFLAGS=$(PTHREAD_CFLAGS) $(ASTCFLAGS)
+CXX_CFLAGS=$(PTHREAD_CFLAGS) $(filter-out -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations $(AST_DECLARATION_AFTER_STATEMENT),$(ASTCFLAGS))
+CC_LDFLAGS_SO=$(PTHREAD_CFLAGS) $(ASTLDFLAGS) $(SOLINK)
+CXX_LDFLAGS_SO=$(PTHREAD_CFLAGS) $(ASTLDFLAGS) $(SOLINK)
+CC_LIBS=$(PTHREAD_LIBS) $(LIBS)
+CXX_LIBS=$(PTHREAD_LIBS) $(LIBS)
+
+# determine whether to double-compile so that the optimizer can report code path problems
+# this is only done when developer mode and DONT_OPTIMIZE are both enabled
+# in that case, we run the preprocessor to produce a .i or .ii file from the source
+# code, then compile once with optimizer enabled (and the output to /dev/null),
+# and if that doesn't fail then compile again with optimizer disabled
+ifeq ($(findstring DONT_OPTIMIZE,$(MENUSELECT_CFLAGS))$(AST_DEVMODE),DONT_OPTIMIZEyes)
+COMPILE_DOUBLE=yes
+endif
+
+%.o: %.s
+	$(ECHO_PREFIX) echo "   [AS] $< -> $@"
+ifeq ($(COMPILE_DOUBLE),yes)
+	$(CMD_PREFIX) $(CC) -o /dev/null -c $< $(CC_CFLAGS) $(OPTIMIZE)
+endif
+	$(CMD_PREFIX) $(CC) -o $@ -c $< $(CC_CFLAGS)
 
 %.o: %.i
 	$(ECHO_PREFIX) echo "   [CCi] $< -> $@"
-	$(CMD_PREFIX) $(CC) -o $@ -c $< $(PTHREAD_CFLAGS) $(ASTCFLAGS) $(MAKE_DEPS)
+ifeq ($(COMPILE_DOUBLE),yes)
+	$(CMD_PREFIX) $(CC) -o /dev/null -c $< $(CC_CFLAGS) $(OPTIMIZE)
+endif
+	$(CMD_PREFIX) $(CC) -o $@ -c $< $(CC_CFLAGS)
+
+%.o: %.c
+	$(ECHO_PREFIX) echo "   [CC] $< -> $@"
+ifeq ($(COMPILE_DOUBLE),yes)
+	$(CMD_PREFIX) $(CC) -o $(@:%.o=%.i) -E $< $(CC_CFLAGS) $(MAKE_DEPS)
+	$(CMD_PREFIX) $(CC) -o /dev/null -c $(@:%.o=%.i) $(CC_CFLAGS) $(OPTIMIZE)
+	$(CMD_PREFIX) $(CC) -o $@ -c $(@:%.o=%.i) $(CC_CFLAGS)
+else
+	$(CMD_PREFIX) $(CC) -o $@ -c $< $(CC_CFLAGS) $(MAKE_DEPS)
+endif
 
 %.i: %.c
 	$(ECHO_PREFIX) echo "   [CPP] $< -> $@"
-	$(CMD_PREFIX) $(CC) -o $@ -E $< $(PTHREAD_CFLAGS) $(ASTCFLAGS) $(MAKE_DEPS)
+	$(CMD_PREFIX) $(CC) -o $@ -E $< $(CC_CFLAGS) $(MAKE_DEPS)
 
-%.o: %.s
-	$(ECHO_PREFIX) echo "   [AS] $< -> $@"
-	$(CMD_PREFIX) $(CC) -o $@ -c $< $(PTHREAD_CFLAGS) $(ASTCFLAGS) $(MAKE_DEPS)
+%.oo: %.ii
+	$(ECHO_PREFIX) echo "   [CXXi] $< -> $@"
+ifeq ($(COMPILE_DOUBLE),yes)
+	$(CMD_PREFIX) $(CXX) -o /dev/null -c $< $(CXX_CFLAGS) $(OPTIMIZE)
+endif
+	$(CMD_PREFIX) $(CXX) -o $@ -c $< $(CXX_CFLAGS)
 
 %.oo: %.cc
 	$(ECHO_PREFIX) echo "   [CXX] $< -> $@"
-	$(CMD_PREFIX) $(CXX) -o $@ -c $< $(PTHREAD_CFLAGS) $(filter-out -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations $(AST_DECLARATION_AFTER_STATEMENT),$(ASTCFLAGS)) $(MAKE_DEPS)
+ifeq ($(COMPILE_DOUBLE),yes)
+	$(CMD_PREFIX) $(CXX) -o $(@:%.oo=%.ii) -E $< $(CXX_CFLAGS) $(MAKE_DEPS)
+	$(CMD_PREFIX) $(CXX) -o /dev/null -c $(@:%.oo=%.ii) $(CXX_CFLAGS) $(MAKE_DEPS) $(OPTIMIZE)
+	$(CMD_PREFIX) $(CXX) -o $@ -c $(@:%.oo=%.ii) $(CXX_CFLAGS) $(MAKE_DEPS)
+else
+	$(CMD_PREFIX) $(CXX) -o $@ -c $< $(CXX_CFLAGS) $(MAKE_DEPS)
+endif
+
+%.ii: %.cc
+	$(ECHO_PREFIX) echo "   [CPP] $< -> $@"
+	$(CMD_PREFIX) $(CXX) -o $@ -E $< $(CXX_CFLAGS) $(MAKE_DEPS)
 
 %.c: %.y
 	$(ECHO_PREFIX) echo "   [BISON] $< -> $@"
@@ -73,11 +119,11 @@
 
 %.so: %.o
 	$(ECHO_PREFIX) echo "   [LD] $^ -> $@"
-	$(CMD_PREFIX) $(CC) $(STATIC_BUILD) -o $@ $(PTHREAD_CFLAGS) $(ASTLDFLAGS) $(SOLINK) $^ $(PTHREAD_LIBS) $(LIBS)
+	$(CMD_PREFIX) $(CC) $(STATIC_BUILD) -o $@ $(CC_LDFLAGS_SO) $^ $(CC_LIBS)
 
 %.so: %.oo
 	$(ECHO_PREFIX) echo "   [LDXX] $^ -> $@"
-	$(CMD_PREFIX) $(CXX) $(STATIC_BUILD) -o $@ $(PTHREAD_CFLAGS) $(ASTLDFLAGS) $(SOLINK) $^ $(PTHREAD_LIBS) $(LIBS)
+	$(CMD_PREFIX) $(CXX) $(STATIC_BUILD) -o $@ $(CXX_LDFLAGS_SO) $^ $(CXX_LIBS)
 
 %.eo: %.o
 	$(ECHO_PREFIX) echo "   [EMBED] $< -> $@"
@@ -93,6 +139,6 @@
 
 %: %.o
 	$(ECHO_PREFIX) echo "   [LD] $^ -> $@"
-	$(CMD_PREFIX) $(CXX) $(STATIC_BUILD) -o $@ $(PTHREAD_CFLAGS) $(ASTLDFLAGS) $^ $(PTHREAD_LIBS) $(LIBS)
+	$(CMD_PREFIX) $(CXX) $(STATIC_BUILD) -o $@ $(PTHREAD_CFLAGS) $(ASTLDFLAGS) $^ $(CXX_LIBS)
 
-dist-clean::
+dist-clean:: clean

Modified: team/murf/threadpool/README
URL: http://svn.digium.com/view/asterisk/team/murf/threadpool/README?view=diff&rev=158753&r1=158752&r2=158753
==============================================================================
--- team/murf/threadpool/README (original)
+++ team/murf/threadpool/README Sat Nov 22 12:57:31 2008
@@ -276,7 +276,7 @@
   If this release of Asterisk was downloaded from a tarball, then some
 additional documentation should have been included.
      * doc/tex/asterisk.pdf --- PDF version of the documentation
-	 * doc/tex/asterisk/index.html --- HTML version of the documentation
+     * doc/tex/asterisk/index.html --- HTML version of the documentation
 
   Finally, you may wish to visit the web site and join the mailing list if
 you're interested in getting more information.

Modified: team/murf/threadpool/UPGRADE-1.2.txt
URL: http://svn.digium.com/view/asterisk/team/murf/threadpool/UPGRADE-1.2.txt?view=diff&rev=158753&r1=158752&r2=158753
==============================================================================
--- team/murf/threadpool/UPGRADE-1.2.txt (original)
+++ team/murf/threadpool/UPGRADE-1.2.txt Sat Nov 22 12:57:31 2008
@@ -1,10 +1,17 @@
 =========================================================
+===
 === Information for upgrading from Asterisk 1.0 to 1.2
 ===
+=== This file documents all the changes that MUST be taken
+=== into account when upgrading between the Asterisk
+=== versions listed below. These changes may require that
+=== you modify your configuration files, dialplan or (in
+=== some cases) source code if you have your own Asterisk
+=== modules or patches. These files also includes advance
+=== notice of any functionality that has been marked as
+=== 'deprecated' and may be removed in a future release,
+=== along with the suggested replacement functionality.
 ===
-=== UPGRADE-1.2.txt -- Upgrade info for 1.0 to 1.2
-=== UPGRADE-1.4.txt -- Upgrade info for 1.2 to 1.4
-=== UPGRADE.txt     -- Upgrade info for 1.4 to 1.6
 =========================================================
 
 Compiling:

Modified: team/murf/threadpool/UPGRADE-1.4.txt
URL: http://svn.digium.com/view/asterisk/team/murf/threadpool/UPGRADE-1.4.txt?view=diff&rev=158753&r1=158752&r2=158753
==============================================================================
--- team/murf/threadpool/UPGRADE-1.4.txt (original)
+++ team/murf/threadpool/UPGRADE-1.4.txt Sat Nov 22 12:57:31 2008
@@ -1,10 +1,19 @@
 =========================================================
+===
 === Information for upgrading from Asterisk 1.2 to 1.4
 ===
+=== These files document all the changes that MUST be taken
+=== into account when upgrading between the Asterisk
+=== versions listed below. These changes may require that
+=== you modify your configuration files, dialplan or (in
+=== some cases) source code if you have your own Asterisk
+=== modules or patches. These files also includes advance
+=== notice of any functionality that has been marked as
+=== 'deprecated' and may be removed in a future release,
+=== along with the suggested replacement functionality.
 ===
 === UPGRADE-1.2.txt -- Upgrade info for 1.0 to 1.2
-=== UPGRADE-1.4.txt -- Upgrade info for 1.2 to 1.4
-=== UPGRADE.txt     -- Upgrade info for 1.4 to 1.6
+===
 =========================================================
 
 Build Process (configure script):

Modified: team/murf/threadpool/UPGRADE.txt
URL: http://svn.digium.com/view/asterisk/team/murf/threadpool/UPGRADE.txt?view=diff&rev=158753&r1=158752&r2=158753
==============================================================================
--- team/murf/threadpool/UPGRADE.txt (original)
+++ team/murf/threadpool/UPGRADE.txt Sat Nov 22 12:57:31 2008
@@ -1,262 +1,62 @@
-=========================================================
-=== Information for upgrading from Asterisk 1.4 to 1.6
+===========================================================
 ===
+=== Information for upgrading between Asterisk 1.6 versions
+===
+=== These files document all the changes that MUST be taken
+=== into account when upgrading between the Asterisk
+=== versions listed below. These changes may require that
+=== you modify your configuration files, dialplan or (in
+=== some cases) source code if you have your own Asterisk
+=== modules or patches. These files also includes advance
+=== notice of any functionality that has been marked as
+=== 'deprecated' and may be removed in a future release,
+=== along with the suggested replacement functionality.
 ===
 === UPGRADE-1.2.txt -- Upgrade info for 1.0 to 1.2
 === UPGRADE-1.4.txt -- Upgrade info for 1.2 to 1.4
-=== UPGRADE.txt     -- Upgrade info for 1.4 to 1.6
-=========================================================
+=== UPGRADE-1.6.txt -- Upgrade info for 1.4 to 1.6
+===
+===========================================================
 
-AEL:
+From 1.6.0.1 to 1.6.1:
 
-* Macros are now implemented underneath with the Gosub() application.
-  Heaven Help You if you wrote code depending on any aspect of this!
-  Previous to 1.6, macros were implemented with the Macro() app, which
-  provided a nice feature of auto-returning. The compiler will do its
-  best to insert a Return() app call at the end of your macro if you did
-  not include it, but really, you should make sure that all execution
-  paths within your macros end in "return;".
+* The ast_agi_register_multiple() and ast_agi_unregister_multiple()
+  API calls were added in 1.6.0, so that modules that provide multiple
+  AGI commands could register/unregister them all with a single
+  step. However, these API calls were not implemented properly, and did
+  not allow the caller to know whether registration or unregistration
+  succeeded or failed. They have been redefined to now return success
+  or failure, but this means any code using these functions will need
+  be recompiled after upgrading to a version of Asterisk containing
+  these changes. In addition, the source code using these functions
+  should be reviewed to ensure it can properly react to failure
+  of registration or unregistration of its API commands.
 
-* The conf2ael program is 'introduced' in this release; it is in a rather
-  crude state, but deemed useful for making a first pass at converting
-  extensions.conf code into AEL. More intelligence will come with time.
+* The ast_agi_fdprintf() API call has been renamed to ast_agi_send()
+  to better match what it really does, and the argument order has been
+  changed to be consistent with other API calls that perform similar
+  operations.
 
-Core:
+From 1.6.0.x to 1.6.1:
 
-* The 'languageprefix' option in asterisk.conf is now deprecated, and
-  the default sound file layout for non-English sounds is the 'new
-  style' layout introduced in Asterisk 1.4 (and used by the automatic
-  sound file installer in the Makefile).
-
-* The ast_expr2 stuff has been modified to handle floating-point numbers.
-  Numbers of the format D.D are now acceptable input for the expr parser, 
-  Where D is a string of base-10 digits. All math is now done in "long double",
-  if it is available on your compiler/architecture. This was half-way between
-  a bug-fix (because the MATH func returns fp by default), and an enhancement.
-  Also, for those counting on, or needing, integer operations, a series of
-  'functions' were also added to the expr language, to allow several styles
-  of rounding/truncation, along with a set of common floating point operations,
-  like sin, cos, tan, log, pow, etc. The ability to call external functions
-  like CDR(), etc. was also added, without having to use the ${...} notation.
- 
-* The delimiter passed to applications has been changed to the comma (','), as
-  that is what people are used to using within extensions.conf.  If you are
-  using realtime extensions, you will need to translate your existing dialplan
-  to use this separator.  To use a literal comma, you need merely to escape it
-  with a backslash ('\').  Another possible side effect is that you may need to
-  remove the obscene level of backslashing that was necessary for the dialplan
-  to work correctly in 1.4 and previous versions.  This should make writing

[... 32817 lines stripped ...]



More information about the asterisk-commits mailing list