backport asterisk changes from whiterussian [2300]
authorNicolas Thill <nico@openwrt.org>
Tue, 25 Oct 2005 21:56:20 +0000 (21:56 +0000)
committerNicolas Thill <nico@openwrt.org>
Tue, 25 Oct 2005 21:56:20 +0000 (21:56 +0000)
SVN-Revision: 2303

openwrt/package/asterisk/Config.in
openwrt/package/asterisk/Makefile
openwrt/package/asterisk/ipkg/asterisk-chan-mgcp.conffiles [new file with mode: 0644]
openwrt/package/asterisk/ipkg/asterisk-chan-mgcp.control [new file with mode: 0644]
openwrt/package/asterisk/ipkg/asterisk-chan-skinny.conffiles [new file with mode: 0644]
openwrt/package/asterisk/ipkg/asterisk-chan-skinny.control [new file with mode: 0644]
openwrt/package/asterisk/ipkg/asterisk-res-agi.control [new file with mode: 0644]
openwrt/package/asterisk/patches/asterisk-1.0.7-chan_iax2-tmp_path.patch [new file with mode: 0644]
openwrt/package/asterisk/patches/asterisk-1.0.7-config-modules.patch

index 5b73567b20f3a77867ed72454ea98e4df9d40828..435ab82578f9ca01824e97ec9b41477820c78bea 100644 (file)
@@ -22,6 +22,22 @@ config BR2_PACKAGE_ASTERISK_CHAN_BLUETOOTH
        help
          The Bluetooth HandsFreeProfile support for Asterisk
 
+config BR2_PACKAGE_ASTERISK_CHAN_MGCP
+       prompt "...-chan-mgcp - Media Gateway Control Protocol implementation"
+       tristate
+       default m if CONFIG_DEVEL
+       depends BR2_PACKAGE_ASTERISK
+       help
+         Media Gateway Control Protocol implementation for Asterisk
+
+config BR2_PACKAGE_ASTERISK_CHAN_SKINNY
+       prompt "...-chan-skinny - Skinny Client Control Protocol implementation"
+       tristate
+       default m if CONFIG_DEVEL
+       depends BR2_PACKAGE_ASTERISK
+       help
+         Skinny Client Control Protocol implementation for Asterisk
+
 config BR2_PACKAGE_ASTERISK_CODEC_ILBC
        prompt "...-codec-ilbc - Internet Low Bitrate Codec (ILBC) Translator"
        tristate
@@ -55,6 +71,14 @@ config BR2_PACKAGE_ASTERISK_PBX_DUNDI
        help
          Distributed Universal Number Discovery (DUNDi) support for Asterisk
 
+config BR2_PACKAGE_ASTERISK_RES_AGI
+       prompt "...-res-agi - Asterisk Gateway Interface module"
+       tristate
+       default m if CONFIG_DEVEL
+       depends BR2_PACKAGE_ASTERISK
+       help
+         Asterisk Gateway Interface module
+
 config BR2_PACKAGE_ASTERISK_MYSQL
        prompt "...-mysql - MySQL modules"
        tristate
index 35b52ec7d65cef55ce27fcdecf3f4354b4852dc3..e9e84e2114535eeae7d9e2f2d4a4d2ed625d2128 100644 (file)
@@ -4,26 +4,30 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=asterisk
 PKG_VERSION:=1.0.9
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 PKG_MD5SUM:=0d7f1c680ae53a739f26a069ef8b580a
 
 PKG_SOURCE_URL:=http://ftp.digium.com/pub/asterisk/ ftp://ftp.digium.com/pub/asterisk/
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
-PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/install
 PKG_CAT:=zcat
 
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
+PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
+
 include $(TOPDIR)/package/rules.mk
 $(eval $(call PKG_template,ASTERISK,asterisk,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
 $(eval $(call PKG_template,ASTERISK_MYSQL,asterisk-mysql,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
 $(eval $(call PKG_template,ASTERISK_PGSQL,asterisk-pgsql,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
 $(eval $(call PKG_template,ASTERISK_VOICEMAIL,asterisk-voicemail,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
 $(eval $(call PKG_template,ASTERISK_SOUNDS,asterisk-sounds,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
-$(eval $(call PKG_template,ASTERISK_CODEC_ILBC,asterisk-codec-ilbc,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
 $(eval $(call PKG_template,ASTERISK_CHAN_BLUETOOTH,asterisk-chan-bluetooth,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
+$(eval $(call PKG_template,ASTERISK_CHAN_MGCP,asterisk-chan-mgcp,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
+$(eval $(call PKG_template,ASTERISK_CHAN_SKINNY,asterisk-chan-skinny,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
+$(eval $(call PKG_template,ASTERISK_CODEC_ILBC,asterisk-codec-ilbc,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
 $(eval $(call PKG_template,ASTERISK_CODEC_LPC10,asterisk-codec-lpc10,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
 $(eval $(call PKG_template,ASTERISK_CODEC_SPEEX,asterisk-codec-speex,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
 $(eval $(call PKG_template,ASTERISK_PBX_DUNDI,asterisk-pbx-dundi,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
+$(eval $(call PKG_template,ASTERISK_RES_AGI,asterisk-res-agi,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
 
 ifneq ($(DEVELOPER),)
 APPS:=app_sql_mysql.so app_sql_postgres.so
@@ -77,27 +81,33 @@ $(IPKG_ASTERISK):
        rm -rf $(IDIR_ASTERISK)/var
        (cd $(IDIR_ASTERISK)/usr/lib/asterisk; \
                rm -rf agi-bin/*; \
-               rm -rf firmware; \
                rm -rf images; \
                rm -rf keys/*; \
-               rm -rf mohmp3; \
+               rm -rf mohmp3/*.mp3; \
                rm -rf sounds/*; \
                cd modules; \
                rm -rf  *adsi* *festival* *modem* *meetme* *oss* *phone* *intercom* \
                        *mp3* *nbscat* *mysql* *postgres* *pgsql* *voicemail* *speex* \
-                       *musiconhold* *zapateller* *jpeg*; \
+                       *zapateller* *jpeg*; \
+               rm -f chan_bluetooth.so ; \
+               rm -f chan_mgcp.so ; \
+               rm -f chan_skinny.so ; \
                rm -f {codec,format}_ilbc.so ; \
                rm -f codec_lpc10.so ; \
-               rm -f chan_bluetooth.so ; \
                rm -f pbx_dundi.so ; \
+               rm -f res_agi.so ; \
        )
        (cd $(IDIR_ASTERISK)/etc/asterisk; \
                rm -f   *odbc* *mysql* *postgres* *pgsql* *voicemail* *adsi* *oss* *alsa* \
                        *festival* *modem* *meetme* *phone* *tds* *vofr* *rpt* *vpb* \
-                       *zapata* *musiconhold*; \
+                       *zapata*; \
                rm -f bluetooth.conf ; \
+               rm -f mgcp.conf ; \
+               rm -f skinny.conf ; \
                rm -f dundi.conf ; \
        )
+       $(SED) 's|/var/lib/asterisk|/usr/lib/asterisk|g' $(IDIR_ASTERISK)/etc/asterisk/musiconhold.conf
+       rm -f $(IDIR_ASTERISK)/etc/asterisk/*.old
        install -d -m0755 $(IDIR_ASTERISK)/etc/default
        install -m0644  ./files/asterisk.default $(IDIR_ASTERISK)/etc/default/asterisk
        install -d -m0755 $(IDIR_ASTERISK)/etc/init.d
@@ -136,6 +146,9 @@ $(IPKG_ASTERISK_VOICEMAIL):
        install -m0644 $(PKG_BUILD_DIR)/configs/voicemail.conf.sample $(IDIR_ASTERISK_VOICEMAIL)/etc/asterisk/voicemail.conf
        install -d -m0755 $(IDIR_ASTERISK_VOICEMAIL)/usr/lib/asterisk/modules
        install -m0755 $(PKG_BUILD_DIR)/apps/*voicemail.so $(IDIR_ASTERISK_VOICEMAIL)/usr/lib/asterisk/modules/
+       install -m0755 $(PKG_BUILD_DIR)/res/res_adsi.so $(IDIR_ASTERISK_VOICEMAIL)/usr/lib/asterisk/modules/
+       install -d -m0755 $(IDIR_ASTERISK_VOICEMAIL)/usr/lib/asterisk/sounds
+       cp -fpR $(PKG_BUILD_DIR)/sounds/vm-*.gsm $(IDIR_ASTERISK_VOICEMAIL)/usr/lib/asterisk/sounds/
        $(RSTRIP) $(IDIR_ASTERISK_VOICEMAIL)
        $(IPKG_BUILD) $(IDIR_ASTERISK_VOICEMAIL) $(PACKAGE_DIR)
 
@@ -147,6 +160,22 @@ $(IPKG_ASTERISK_CHAN_BLUETOOTH):
        $(RSTRIP) $(IDIR_ASTERISK_CHAN_BLUETOOTH)
        $(IPKG_BUILD) $(IDIR_ASTERISK_CHAN_BLUETOOTH) $(PACKAGE_DIR)
 
+$(IPKG_ASTERISK_CHAN_MGCP):
+       install -d -m0755 $(IDIR_ASTERISK_CHAN_MGCP)/etc/asterisk
+       install -m0644 $(PKG_BUILD_DIR)/configs/mgcp.conf.sample $(IDIR_ASTERISK_CHAN_MGCP)/etc/asterisk/mgcp.conf
+       install -d -m0755 $(IDIR_ASTERISK_CHAN_MGCP)/usr/lib/asterisk/modules
+       install -m0755 $(PKG_BUILD_DIR)/channels/chan_mgcp.so $(IDIR_ASTERISK_CHAN_MGCP)/usr/lib/asterisk/modules/
+       $(RSTRIP) $(IDIR_ASTERISK_CHAN_MGCP)
+       $(IPKG_BUILD) $(IDIR_ASTERISK_CHAN_MGCP) $(PACKAGE_DIR)
+
+$(IPKG_ASTERISK_CHAN_SKINNY):
+       install -d -m0755 $(IDIR_ASTERISK_CHAN_SKINNY)/etc/asterisk
+       install -m0644 $(PKG_BUILD_DIR)/configs/skinny.conf.sample $(IDIR_ASTERISK_CHAN_SKINNY)/etc/asterisk/skinny.conf
+       install -d -m0755 $(IDIR_ASTERISK_CHAN_SKINNY)/usr/lib/asterisk/modules
+       install -m0755 $(PKG_BUILD_DIR)/channels/chan_skinny.so $(IDIR_ASTERISK_CHAN_SKINNY)/usr/lib/asterisk/modules/
+       $(RSTRIP) $(IDIR_ASTERISK_CHAN_SKINNY)
+       $(IPKG_BUILD) $(IDIR_ASTERISK_CHAN_SKINNY) $(PACKAGE_DIR)
+
 $(IPKG_ASTERISK_CODEC_ILBC):
        install -d -m0755 $(IDIR_ASTERISK_CODEC_ILBC)/usr/lib/asterisk/modules
        install -m0755 $(PKG_BUILD_DIR)/codecs/codec_ilbc.so $(IDIR_ASTERISK_CODEC_ILBC)/usr/lib/asterisk/modules/
@@ -174,3 +203,9 @@ $(IPKG_ASTERISK_PBX_DUNDI):
        $(RSTRIP) $(IDIR_ASTERISK_PBX_DUNDI)
        $(IPKG_BUILD) $(IDIR_ASTERISK_PBX_DUNDI) $(PACKAGE_DIR)
 
+$(IPKG_ASTERISK_RES_AGI):
+       install -d -m0755 $(IDIR_ASTERISK_RES_AGI)/usr/lib/asterisk/modules
+       install -m0755 $(PKG_BUILD_DIR)/res/res_agi.so $(IDIR_ASTERISK_RES_AGI)/usr/lib/asterisk/modules/
+       $(RSTRIP) $(IDIR_ASTERISK_RES_AGI)
+       $(IPKG_BUILD) $(IDIR_ASTERISK_RES_AGI) $(PACKAGE_DIR)
+
diff --git a/openwrt/package/asterisk/ipkg/asterisk-chan-mgcp.conffiles b/openwrt/package/asterisk/ipkg/asterisk-chan-mgcp.conffiles
new file mode 100644 (file)
index 0000000..40a81df
--- /dev/null
@@ -0,0 +1 @@
+/etc/asterisk/mgcp.conf
diff --git a/openwrt/package/asterisk/ipkg/asterisk-chan-mgcp.control b/openwrt/package/asterisk/ipkg/asterisk-chan-mgcp.control
new file mode 100644 (file)
index 0000000..78ea3b6
--- /dev/null
@@ -0,0 +1,5 @@
+Package: asterisk-chan-mgcp
+Priority: optional
+Section: net
+Description: a Media Gateway Control Protocol implementation for Asterisk
+Depends: asterisk
diff --git a/openwrt/package/asterisk/ipkg/asterisk-chan-skinny.conffiles b/openwrt/package/asterisk/ipkg/asterisk-chan-skinny.conffiles
new file mode 100644 (file)
index 0000000..eaf9b6d
--- /dev/null
@@ -0,0 +1 @@
+/etc/asterisk/skinny.conf
diff --git a/openwrt/package/asterisk/ipkg/asterisk-chan-skinny.control b/openwrt/package/asterisk/ipkg/asterisk-chan-skinny.control
new file mode 100644 (file)
index 0000000..3933e33
--- /dev/null
@@ -0,0 +1,5 @@
+Package: asterisk-chan-skinny
+Priority: optional
+Section: net
+Description: a Skinny Client Control Protocol implementation for Asterisk
+Depends: asterisk
diff --git a/openwrt/package/asterisk/ipkg/asterisk-res-agi.control b/openwrt/package/asterisk/ipkg/asterisk-res-agi.control
new file mode 100644 (file)
index 0000000..44f7170
--- /dev/null
@@ -0,0 +1,5 @@
+Package: asterisk-res-agi
+Priority: optional
+Section: net
+Description: Asterisk Gateway Interface module
+Depends: asterisk
diff --git a/openwrt/package/asterisk/patches/asterisk-1.0.7-chan_iax2-tmp_path.patch b/openwrt/package/asterisk/patches/asterisk-1.0.7-chan_iax2-tmp_path.patch
new file mode 100644 (file)
index 0000000..916496e
--- /dev/null
@@ -0,0 +1,12 @@
+diff -ruN asterisk-1.0.7-old/channels/chan_iax2.c asterisk-1.0.7-new/channels/chan_iax2.c
+--- asterisk-1.0.7-old/channels/chan_iax2.c    2005-10-25 02:06:35.000000000 +0200
++++ asterisk-1.0.7-new/channels/chan_iax2.c    2005-10-25 04:35:11.000000000 +0200
+@@ -960,7 +960,7 @@
+               last++;
+       else
+               last = s;
+-      snprintf(s2, strlen(s) + 100, "/var/tmp/%s-%ld", last, (unsigned long)rand());
++      snprintf(s2, strlen(s) + 100, "/tmp/%s-%ld", last, (unsigned long)rand());
+       res = stat(s, &stbuf);
+       if (res < 0) {
+               ast_log(LOG_WARNING, "Failed to stat '%s': %s\n", s, strerror(errno));
index e56f9092c0c214172cd8095b4001ac522c456eab..28da5ae92bf307ca20cffa103373639632ed75f3 100644 (file)
 diff -ruN asterisk-1.0.7-old/configs/modules.conf.sample asterisk-1.0.7-new/configs/modules.conf.sample
 --- asterisk-1.0.7-old/configs/modules.conf.sample     2003-06-26 20:57:54.000000000 +0200
-+++ asterisk-1.0.7-new/configs/modules.conf.sample     2005-03-19 17:38:06.000000000 +0100
-@@ -23,8 +23,8 @@
- ; Explicitly load the chan_modem.so early on to be sure
- ; it loads before any of the chan_modem_* 's afte rit
++++ asterisk-1.0.7-new/configs/modules.conf.sample     2005-10-25 04:08:28.000000000 +0200
+@@ -7,33 +7,91 @@
+ [modules]
+ autoload=yes
  ;
+-; If you want, load the GTK console right away.  
+-; Don't load the KDE console since
+-; it's not as sophisticated right now.
+-;
+-noload => pbx_gtkconsole.so
+-;load => pbx_gtkconsole.so
+-noload => pbx_kdeconsole.so
+-;
+-; Intercom application is obsoleted by
+-; chan_oss.  Don't load it.
+-;
+-noload => app_intercom.so
+-;
+-; Explicitly load the chan_modem.so early on to be sure
+-; it loads before any of the chan_modem_* 's afte rit
+-;
 -load => chan_modem.so
 -load => res_musiconhold.so
-+noload => chan_modem.so
-+noload => res_musiconhold.so
+-;
+-; Load either OSS or ALSA, not both
+-; By default, load OSS only (automatically) and do not load ALSA
+-;
+-noload => chan_alsa.so
+-;noload => chan_oss.so
++; load => res_features.so ; Call Parking Resource 
++noload => res_indications.so ; Indications Configuration
++noload => res_monitor.so ; Call Monitoring Resource 
++; load => res_musiconhold.so ; Music On Hold Resource 
++noload => cdr_csv.so ; Comma Separated Values CDR Backend
++noload => cdr_manager.so ; Asterisk Call Manager CDR Backend
++noload => chan_agent.so ; Agent Proxy Channel
++; load => chan_iax2.so ; Inter Asterisk eXchange (Ver 2)
++; load => chan_local.so ; Local Proxy Channel
++; load => chan_sip.so ; Session Initiation Protocol (SIP)
++noload => codec_a_mu.so ; A-law and Mulaw direct Coder/Decoder
++noload => codec_adpcm.so ; Adaptive Differential PCM Coder/Decoder
++noload => codec_alaw.so ; A-law Coder/Decoder
++noload => codec_g726.so ; ITU G.726-32kbps G726 Transcoder
++; load => codec_gsm.so ; GSM/PCM16 (signed linear) Codec Translat
++; load => codec_ulaw.so ; Mu-law Coder/Decoder
++noload => format_g726.so ; Raw G.726 (16/24/32/40kbps) data
++noload => format_g729.so ; Raw G729 data
++; load => format_gsm.so ; Raw GSM data
++noload => format_h263.so ; Raw h263 data
++noload => format_jpeg.so ; JPEG (Joint Picture Experts Group) Image
++; load => format_pcm.so ; Raw uLaw 8khz Audio support (PCM)
++noload => format_pcm_alaw.so ; Raw aLaw 8khz PCM Audio support
++noload => format_sln.so ; Raw Signed Linear Audio support (SLN)
++noload => format_vox.so ; Dialogic VOX (ADPCM) File Format
++; load => format_wav.so ; Microsoft WAV format (8000hz Signed Line
++; load => format_wav_gsm.so ; Microsoft WAV format (Proprietary GSM)
++noload => app_alarmreceiver.so ; Alarm Receiver for Asterisk
++noload => app_authenticate.so ; Authentication Application
++noload => app_cdr.so ; Make sure asterisk doesn't save CDR for
++noload => app_chanisavail.so ; Check if channel is available
++noload => app_controlplayback.so ; Control Playback Application
++noload => app_cut.so ; Cuts up variables
++noload => app_db.so ; Database access functions for Asterisk e
++; load => app_dial.so ; Dialing Application
++noload => app_directory.so ; Extension Directory
++noload => app_disa.so ; DISA (Direct Inward System Access) Appli
++; load => app_echo.so ; Simple Echo Application
++noload => app_enumlookup.so ; ENUM Lookup
++noload => app_eval.so ; Reevaluates strings
++noload => app_exec.so ; Executes applications
++noload => app_forkcdr.so ; Fork The CDR into 2 seperate entities.
++noload => app_getcpeid.so ; Get ADSI CPE ID
++noload => app_groupcount.so ; Group Management Routines
++noload => app_ices.so ; Encode and Stream via icecast and ices
++noload => app_image.so ; Image Transmission Application
++noload => app_lookupblacklist.so ; Look up Caller*ID name/number from black
++noload => app_lookupcidname.so ; Look up CallerID Name from local databas
++; load => app_macro.so ; Extension Macros
++; load => app_milliwatt.so ; Digital Milliwatt (mu-law) Test Applicat
++noload => app_parkandannounce.so ; Call Parking and Announce Application
++; load => app_playback.so ; Trivial Playback Application
++noload => app_privacy.so ; Require phone number to be entered, if n
++noload => app_qcall.so ; Call from Queue
++noload => app_queue.so ; True Call Queueing
++noload => app_random.so ; Random goto
++noload => app_read.so ; Read Variable Application
++noload => app_record.so ; Trivial Record Application
++; load => app_sayunixtime.so ; Say time
++noload => app_senddtmf.so ; Send DTMF digits Application
++noload => app_sendtext.so ; Send Text Applications
++noload => app_setcallerid.so ; Set CallerID Application
++noload => app_setcdruserfield.so ; CDR user field apps
++noload => app_setcidname.so ; Set CallerID Name
++noload => app_setcidnum.so ; Set CallerID Number
++noload => app_sms.so ; SMS/PSTN handler
++noload => app_softhangup.so ; Hangs up the requested channel
++noload => app_striplsd.so ; Strip trailing digits
++noload => app_substring.so ; (Deprecated) Save substring digits in a
++noload => app_system.so ; Generic System() application
++noload => app_talkdetect.so ; Playback with Talk Detection
++noload => app_test.so ; Interface Test Application
++noload => app_transfer.so ; Transfer
++noload => app_txtcidname.so ; TXTCIDName
++noload => app_url.so ; Send URL Applications
++noload => app_userevent.so ; Custom User Event Application
++; load => app_verbose.so ; Send verbose output
++noload => app_waitforring.so ; Waits until first ring after time
++; load => pbx_config.so ; Text Extension Configuration
++noload => pbx_spool.so ; Outgoing Spool Support
++noload => pbx_wilcalu.so ; Wil Cal U (Auto Dialer) 
++
  ;
- ; Load either OSS or ALSA, not both
- ; By default, load OSS only (automatically) and do not load ALSA
-@@ -36,4 +36,12 @@
+ ; Module names listed in "global" section will have symbols globally
  ; exported to modules loaded after them.
  ;
  [global]
 -chan_modem.so=yes
-+; chan_modem.so=yes
-+noload => app_adsiprog.so
-+noload => app_db.so
-+noload => app_hasnewvoicemail.so
-+noload => app_voicemail.so
-+noload => chan_skinny.so
-+noload => cdr_csv.so
-+noload => res_adsi.so
-+noload => res_agi.so
++chan_modem.so=no