Hello everyone, I've made newer version of Asterisk package. Previous version located at http://patchwork.openwrt.org/patch/2898/ had some issues with crosscompiling Asterisk's SIP stack PJSIP. Current version should not suffer from incorrectly compiled PJSIP built inside the Asterisk.
I would really appreciate if anyone would love to review my latest patch that brings the latest LTS Asterisk11 version to OpenWrt. Also I would appreciate if anyone would love to test this package if it works on different platforms. Thank you so much Signed-off-by: Jiri Slachta <slac...@cesnet.cz> Index: feeds/packages/net/asterisk-11.x/patches/100-build_tools-iconv.patch =================================================================== --- feeds/packages/net/asterisk-11.x/patches/100-build_tools-iconv.patch (revision 0) +++ feeds/packages/net/asterisk-11.x/patches/100-build_tools-iconv.patch (revision 0) @@ -0,0 +1,11 @@ +--- a/build_tools/menuselect-deps.in ++++ b/build_tools/menuselect-deps.in +@@ -18,7 +18,7 @@ GTK2=@PBX_GTK2@ + H323=@PBX_H323@ + HOARD=@PBX_HOARD@ + ICAL=@PBX_ICAL@ +-ICONV=@PBX_ICONV@ ++ICONV=0 + IKSEMEL=@PBX_IKSEMEL@ + IMAP_TK=@PBX_IMAP_TK@ + IODBC=@PBX_IODBC@ Index: feeds/packages/net/asterisk-11.x/patches/500-nres.patch =================================================================== --- feeds/packages/net/asterisk-11.x/patches/500-nres.patch (revision 0) +++ feeds/packages/net/asterisk-11.x/patches/500-nres.patch (revision 0) @@ -0,0 +1,11 @@ +--- a/configure ++++ b/configure +@@ -24044,7 +24044,7 @@ + $as_echo "yes" >&6; } + + cat >>confdefs.h <<\_ACEOF +-#define HAVE_RES_NINIT 1 ++//#define HAVE_RES_NINIT 1 + _ACEOF + + { $as_echo "$as_me:$LINENO: checking for library containing res_9_ndestroy" >&5 Index: feeds/packages/net/asterisk-11.x/patches/600-cross-compile-check-pjproject.patch =================================================================== --- feeds/packages/net/asterisk-11.x/patches/600-cross-compile-check-pjproject.patch (revision 0) +++ feeds/packages/net/asterisk-11.x/patches/600-cross-compile-check-pjproject.patch (revision 0) @@ -0,0 +1,89 @@ +--- a/res/pjproject/aconfigure ++++ b/res/pjproject/aconfigure +@@ -2898,46 +2898,46 @@ + ac_clean_files="$ac_clean_files conftest.out" + # Check that the compiler produces executables we can run. If not, either + # the compiler is broken, or we cross compile. +-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 +-$as_echo_n "checking whether we are cross compiling... " >&6; } +-if test "$cross_compiling" != yes; then +- { { ac_try="$ac_link" +-case "(($ac_try" in +- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; +- *) ac_try_echo=$ac_try;; +-esac +-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +-$as_echo "$ac_try_echo"; } >&5 +- (eval "$ac_link") 2>&5 +- ac_status=$? +- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 +- test $ac_status = 0; } +- if { ac_try='./conftest$ac_cv_exeext' +- { { case "(($ac_try" in +- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; +- *) ac_try_echo=$ac_try;; +-esac +-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +-$as_echo "$ac_try_echo"; } >&5 +- (eval "$ac_try") 2>&5 +- ac_status=$? +- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 +- test $ac_status = 0; }; }; then +- cross_compiling=no +- else +- if test "$cross_compiling" = maybe; then +- cross_compiling=yes +- else +- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +-as_fn_error "cannot run C compiled programs. +-If you meant to cross compile, use \`--host'. +-See \`config.log' for more details." "$LINENO" 5; } +- fi +- fi +-fi +-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 +-$as_echo "$cross_compiling" >&6; } ++#{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 ++#$as_echo_n "checking whether we are cross compiling... " >&6; } ++#if test "$cross_compiling" != yes; then ++# { { ac_try="$ac_link" ++#case "(($ac_try" in ++# *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; ++# *) ac_try_echo=$ac_try;; ++#esac ++#eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" ++#$as_echo "$ac_try_echo"; } >&5 ++# (eval "$ac_link") 2>&5 ++# ac_status=$? ++# $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 ++# test $ac_status = 0; } ++# if { ac_try='./conftest$ac_cv_exeext' ++# { { case "(($ac_try" in ++# *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; ++# *) ac_try_echo=$ac_try;; ++#esac ++#eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" ++#$as_echo "$ac_try_echo"; } >&5 ++# (eval "$ac_try") 2>&5 ++# ac_status=$? ++# $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 ++# test $ac_status = 0; }; }; then ++# cross_compiling=no ++# else ++# if test "$cross_compiling" = maybe; then ++# cross_compiling=yes ++# else ++# { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 ++#$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} ++#as_fn_error "cannot run C compiled programs. ++#If you meant to cross compile, use \`--host'. ++#See \`config.log' for more details." "$LINENO" 5; } ++# fi ++# fi ++#fi ++#{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 ++#$as_echo "$cross_compiling" >&6; } + + rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out + ac_clean_files=$ac_clean_files_save Index: feeds/packages/net/asterisk-11.x/patches/200-addons-defaultenable.patch =================================================================== --- feeds/packages/net/asterisk-11.x/patches/200-addons-defaultenable.patch (revision 0) +++ feeds/packages/net/asterisk-11.x/patches/200-addons-defaultenable.patch (revision 0) @@ -0,0 +1,77 @@ +--- a/addons/app_mysql.c ++++ b/addons/app_mysql.c +@@ -25,7 +25,7 @@ + + /*** MODULEINFO + <depend>mysqlclient</depend> +- <defaultenabled>no</defaultenabled> ++ <defaultenabled>yes</defaultenabled> + <support_level>deprecated</support_level> + <replacement>func_odbc</replacement> + ***/ +--- a/addons/app_saycountpl.c ++++ b/addons/app_saycountpl.c +@@ -21,7 +21,7 @@ + */ + + /*** MODULEINFO +- <defaultenabled>no</defaultenabled> ++ <defaultenabled>yes</defaultenabled> + <support_level>deprecated</support_level> + <replacement>say.conf</replacement> + ***/ +--- a/addons/cdr_mysql.c ++++ b/addons/cdr_mysql.c +@@ -35,7 +35,7 @@ + + /*** MODULEINFO + <depend>mysqlclient</depend> +- <defaultenabled>no</defaultenabled> ++ <defaultenabled>yes</defaultenabled> + <support_level>deprecated</support_level> + <replacement>cdr_adaptive_odbc</replacement> + ***/ +--- a/addons/chan_mobile.c ++++ b/addons/chan_mobile.c +@@ -27,7 +27,7 @@ + + /*** MODULEINFO + <depend>bluetooth</depend> +- <defaultenabled>no</defaultenabled> ++ <defaultenabled>yes</defaultenabled> + <support_level>extended</support_level> + ***/ + +--- a/addons/chan_ooh323.c ++++ b/addons/chan_ooh323.c +@@ -18,7 +18,7 @@ + + + /*** MODULEINFO +- <defaultenabled>no</defaultenabled> ++ <defaultenabled>yes</defaultenabled> + <support_level>extended</support_level> + ***/ + +--- a/addons/res_config_mysql.c ++++ b/addons/res_config_mysql.c +@@ -24,7 +24,7 @@ + + /*** MODULEINFO + <depend>mysqlclient</depend> +- <defaultenabled>no</defaultenabled> ++ <defaultenabled>yes</defaultenabled> + <support_level>extended</support_level> + ***/ + +--- a/res/res_pktccops.c ++++ b/res/res_pktccops.c +@@ -31,7 +31,7 @@ + */ + + /*** MODULEINFO +- <defaultenabled>no</defaultenabled> ++ <defaultenabled>yes</defaultenabled> + <support_level>extended</support_level> + ***/ + Index: feeds/packages/net/asterisk-11.x/patches/50-pjproject-configure-moved-to-makefile.patch =================================================================== --- feeds/packages/net/asterisk-11.x/patches/50-pjproject-configure-moved-to-makefile.patch (revision 0) +++ feeds/packages/net/asterisk-11.x/patches/50-pjproject-configure-moved-to-makefile.patch (revision 0) @@ -0,0 +1,17 @@ +--- a/res/Makefile ++++ b/res/Makefile +@@ -70,11 +70,11 @@ + $(MAKE) -C pjproject realclean + rm -f snmp/*.o snmp/*.i ael/*.o ael/*.i ais/*.o ais/*.i + +-pjproject/build.mak: +- cd pjproject && ./configure AR="" CFLAGS=-fPIC --disable-floating-point --disable-sound --disable-oss --disable-speex-aec --disable-l16-codec --disable-gsm-codec --disable-g722-codec --disable-g7221-codec --disable-speex-codec --disable-ilbc-codec --disable-g711-codec ++#pjproject/build.mak: ++# cd pjproject && ./configure AR="" CFLAGS=-fPIC --disable-floating-point --disable-sound --disable-oss --disable-speex-aec --disable-l16-codec --disable-gsm-codec --disable-g722-codec --disable-g7221-codec --disable-speex-codec --disable-ilbc-codec --disable-g711-codec + + .PHONY : pjproject +-pjproject: pjproject/build.mak ++#pjproject: pjproject/build.mak + # Make sure we always build pjproject with a single job. + $(MAKE) -j1 -C pjproject dep + $(MAKE) -j1 -C pjproject Index: feeds/packages/net/asterisk-11.x/Makefile =================================================================== --- feeds/packages/net/asterisk-11.x/Makefile (revision 0) +++ feeds/packages/net/asterisk-11.x/Makefile (revision 0) @@ -0,0 +1,400 @@ +# +# Copyright (C) 2013 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=asterisk11 +PKG_VERSION:=11.1.2 +PKG_RELEASE:=1 + +PKG_SOURCE:=asterisk-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=http://downloads.asterisk.org/pub/telephony/asterisk/releases/ +PKG_MD5SUM:=e9f993a8d039100544bd8b748657922b + +PKG_BUILD_DIR=$(BUILD_DIR)/asterisk-$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk + +define Package/asterisk11/install/module + $(INSTALL_DIR) $(1)/usr/lib/asterisk/modules + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/asterisk/modules/*$(2).so* $(1)/usr/lib/asterisk/modules/ +endef + +define Package/asterisk11/install/conffile + $(INSTALL_DIR) $(1)/etc/asterisk + $(CP) $(PKG_INSTALL_DIR)/etc/asterisk/*$(2)* $(1)/etc/asterisk/ +endef + +define Package/asterisk11/install/lib + $(INSTALL_DIR) $(1)/usr/lib + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/$(2).so* $(1)/usr/lib/ +endef + +define Package/asterisk11/install/sbin + $(INSTALL_DIR) $(1)/usr/sbin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/$(2) $(1)/usr/sbin/ +endef + +define Package/asterisk11/install/sounds + $(INSTALL_DIR) $(1)/usr/lib/asterisk/sounds/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/asterisk/sounds/en/$(2) $(1)/usr/lib/asterisk/sounds/ +endef + +define BuildAsteriskModule + define Package/asterisk11-$(1) + $$(call Package/asterisk11/Default) + TITLE:=$(2) support + DEPENDS:= asterisk11 $(4) + endef + + define Package/asterisk11-$(1)/conffiles + $(5) + endef + + define Package/asterisk11-$(1)/description + $$(call Package/asterisk11/Default/description) + This package provides support $(3) in Asterisk. + endef + + define Package/asterisk11-$(1)/install +$(foreach c,$(6),$(call Package/asterisk11/install/conffile,$$(1),$(c));) +$(foreach m,$(7),$(call Package/asterisk11/install/module,$$(1),$(m));) +$(foreach s,$(8),$(call Package/asterisk11/install/sounds,$$(1),$(s));) + endef + + $$(eval $$(call BuildPackage,asterisk11-$(1))) +endef + +define Package/asterisk11/Default + SUBMENU:=Telephony + SECTION:=net + CATEGORY:=Network + URL:=http://www.asterisk.org/ +endef + +define Package/asterisk11/Default/description + Asterisk is a complete PBX in software. It provides all of the features + you would expect from a PBX and more. Asterisk does voice over IP in three + protocols, and can interoperate with almost all standards-based telephony + equipment using relatively inexpensive hardware. +endef + +define Package/asterisk11 +$(call Package/asterisk11/Default) + TITLE:=Complete open source PBX, v11.x + MENU:=1 + DEPENDS:= +libuuid +libopenssl +libncurses +libpopt +libpthread +libsqlite3 +librt +zlib @!TARGET_avr32 +endef + +define Package/asterisk11/description +$(call Package/asterisk11/Default/description) +endef + +define Package/asterisk11/conffiles +/etc/asterisk/asterisk.conf +/etc/asterisk/acl.conf +/etc/asterisk/modules.conf +/etc/asterisk/extconfig.conf +/etc/asterisk/extensions.conf +/etc/asterisk/sip.conf +/etc/asterisk/sip_notify.conf +/etc/asterisk/features.conf +/etc/asterisk/indications.conf +/etc/asterisk/logger.conf +/etc/asterisk/manager.conf +/etc/asterisk/rtp.conf +/etc/default/asterisk +/etc/init.d/asterisk +endef + +AST_CFG_FILES:=asterisk.conf acl.conf extensions.conf extconfig.conf features.conf indications.conf \ + logger.conf manager.conf modules.conf sip.conf sip_notify.conf rtp.conf +AST_EMB_MODULES:=app_dial app_echo app_playback app_macro \ + chan_sip res_rtp_asterisk res_rtp_multicast \ + codec_ulaw codec_gsm format_gsm format_pcm \ + format_wav format_wav_gsm pbx_config \ + func_strings func_timeout func_callerid func_logic + +define Package/asterisk11/install +$(call Package/asterisk11/install/lib,$(1),libasteriskssl) +$(call Package/asterisk11/install/sbin,$(1),asterisk) +$(call Package/asterisk11/install/sbin,$(1),safe_asterisk) +$(call Package/asterisk11/install/sbin,$(1),astgenkey) +$(foreach m,$(AST_CFG_FILES),$(call Package/asterisk11/install/conffile,$(1),$(m));) +$(foreach m,$(AST_EMB_MODULES),$(call Package/asterisk11/install/module,$(1),$(m));) + $(INSTALL_DIR) $(1)/etc/default + $(INSTALL_DATA) ./files/asterisk.default $(1)/etc/default/asterisk + $(INSTALL_DIR) $(1)/etc/init.d + $(INSTALL_BIN) ./files/asterisk.init $(1)/etc/init.d/asterisk +endef + +define Package/asterisk11-utils +$(call Package/asterisk11/Default) + TITLE:=Asterisk utilities + DEPENDS:= +asterisk11 +endef + +define Package/asterisk11-utils/install +astcanary astdb2bdb astdb2sqlite3 astgenkey autosupport safe_asterisk) +endef + +ifneq ($(SDK)$(CONFIG_PACKAGE_asterisk11-app-meetme),) + CONFIGURE_ARGS+= \ + --with-dahdi="$(STAGING_DIR)/usr" +else + CONFIGURE_ARGS+= \ + --without-dahdi +endif + +ifneq ($(SDK)$(CONFIG_PACKAGE_asterisk11-res-xmpp),) + CONFIGURE_ARGS+= \ + --with-gnutls="$(STAGING_DIR)/usr" \ + --with-iksemel="$(STAGING_DIR)/usr" + SITE_VARS+= \ + ac_cv_lib_iksemel_iks_start_sasl=yes \ + ac_cv_lib_gnutls_gnutls_bye=yes +else + CONFIGURE_ARGS+= \ + --without-gnutls \ + --without-iksemel +endif + +ifneq ($(SDK)$(CONFIG_PACKAGE_asterisk11-curl),) + CONFIGURE_ARGS+= \ + --with-curl="$(STAGING_DIR)/usr" +else + CONFIGURE_ARGS+= \ + --without-curl +endif + +ifneq ($(SDK)$(CONFIG_PACKAGE_asterisk11-mysql),) + CONFIGURE_ARGS+= \ + --with-mysqlclient="$(STAGING_DIR)/usr/bin" +else + CONFIGURE_ARGS+= \ + --without-mysqlclient +endif + +ifneq ($(SDK)$(CONFIG_PACKAGE_asterisk11-res-fax-spandsp),) + CONFIGURE_ARGS+= \ + --with-spandsp="$(STAGING_DIR)/usr" +else + CONFIGURE_ARGS+= \ + --without-spandsp +endif + +ifneq ($(SDK)$(CONFIG_PACKAGE_asterisk11-chan-mobile),) + CONFIGURE_ARGS+= \ + --with-bluetooth="$(STAGING_DIR)/usr" +else + CONFIGURE_ARGS+= \ + --without-bluetooth +endif + +ifneq ($(SDK)$(CONFIG_PACKAGE_asterisk11-res-srtp),) + CONFIGURE_ARGS+= \ + --with-srtp="$(STAGING_DIR)/usr" +else + CONFIGURE_ARGS+= \ + --without-srtp +endif + +ifneq ($(SDK)$(CONFIG_PACKAGE_asterisk11-pbx-lua),) + CONFIGURE_ARGS+= \ + --with-lua="$(STAGING_DIR)/usr" + TARGET_LDFLAGS+=-ldl -lcrypt +else + CONFIGURE_ARGS+= \ + --without-pbx-lua +endif + +EXTRA_CFLAGS+= $(TARGET_CPPFLAGS) +EXTRA_LDFLAGS+= $(TARGET_LDFLAGS) -Wl,-rpath-link,$(STAGING_DIR)/usr/lib +CONFIGURE_ARGS+= \ + --without-curses \ + --with-gsm=internal \ + --without-cap \ + --without-gtk2 \ + --without-isdnnet \ + --without-misdn \ + --without-nbs \ + --with-ncurses="$(STAGING_DIR)/usr" \ + --without-netsnmp \ + --without-newt \ + --without-ogg \ + --without-osptk \ + --with-popt="$(STAGING_DIR)/usr" \ + --without-pri \ + --without-qt \ + --without-radius \ + --without-sdl \ + --without-suppserv \ + --without-tds \ + --without-termcap \ + --without-tinfo \ + --without-vorbis \ + --without-vpb \ + --with-z="$(STAGING_DIR)/usr" \ + --with-sounds-cache="$(DL_DIR)" \ + --disable-xmldoc + +define Build/Prepare + $(call Build/Prepare/Default) +endef + +define Build/Configure + (cd $(PKG_BUILD_DIR)/res/pjproject ;\ + ./configure \ + AR="" \ + CFLAGS="-fPIC" \ + --target=$(GNU_TARGET_NAME) \ + --host=$(GNU_TARGET_NAME) \ + --build=$(GNU_HOST_NAME) \ + --disable-floating-point \ + --disable-sound \ + --disable-oss \ + --disable-speex-aec \ + --disable-l16-codec \ + --disable-gsm-codec \ + --disable-g722-codec \ + --disable-g7221-codec \ + --disable-speex-codec \ + --disable-ilbc-codec \ + --disable-g711-codec \ + ) + $(MAKE) -j1 -C $(PKG_BUILD_DIR)/res/pjproject dep + $(MAKE) -j1 -C $(PKG_BUILD_DIR)/res/pjproject + $(call Build/Configure/Default,,$(SITE_VARS)) +endef + +define Build/Compile + $(MAKE) -C "$(PKG_BUILD_DIR)" \ + include/asterisk/version.h \ + include/asterisk/buildopts.h defaults.h \ + makeopts.embed_rules + ASTCFLAGS="$(EXTRA_CFLAGS)" + ASTLDFLAGS="$(EXTRA_LDFLAGS)" + $(MAKE) -C "$(PKG_BUILD_DIR)" \ + ASTVARLIBDIR="/usr/lib/asterisk" \ + ASTDATADIR="/usr/lib/asterisk" \ + ASTKEYDIR="/usr/lib/asterisk" \ + ASTDBDIR="/usr/lib/asterisk" \ + NOISY_BUILD="1" \ + DEBUG="" \ + OPTIMIZE="" \ + DESTDIR="$(PKG_INSTALL_DIR)" \ + all install samples +endef + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include/asterisk-11/include/asterisk/ + $(CP) $(PKG_INSTALL_DIR)/usr/include/asterisk/*.h $(1)/usr/include/asterisk-11/include/asterisk/ + $(CP) $(PKG_INSTALL_DIR)/usr/include/asterisk.h $(1)/usr/include/asterisk-11/include/ +endef + +$(eval $(call BuildPackage,asterisk11)) + +################################ +# AST modules +# Params: +# 1 - Package subname +# 2 - Package title +# 3 - Module description +# 4 - Module dependencies +# 5 - Full path to multiple conffiles +# 6 - conf files +# 7 - module files +# 8 - sound files +################################ + +$(eval $(call BuildAsteriskModule,app-alarmreceiver,Alarm receiver,Central Station Alarm receiver for Ademco Contact ID,,,,app_alarmreceiver,)) +$(eval $(call BuildAsteriskModule,app-confbridge,ConfBridge,Software bridge for multi-party audio conferencing,,/etc/asterisk/confbridge.conf,confbridge.conf,app_confbridge,)) +$(eval $(call BuildAsteriskModule,app-directed_pickup,Directed call pickup,support for directed call pickup,,,,app_directed_pickup,)) +$(eval $(call BuildAsteriskModule,app-disa,Direct Inward System Access,Direct Inward System Access,,,,app_disa,)) +$(eval $(call BuildAsteriskModule,app-exec,Exec application,support for application execution,,,,app_exec,)) +$(eval $(call BuildAsteriskModule,app-chanisavail,Channel availability check,support for checking if a channel is available,,,,app_chanisavail,)) +$(eval $(call BuildAsteriskModule,app-chanspy,Channel listen in,support for listening in on any channel,,,,app_chanspy,)) +$(eval $(call BuildAsteriskModule,app-minivm,Minimal voicemail system,a voicemail system in small building blocks working together based on the Comedian Mail voicemail,,/etc/asterisk/extensions_minivm.conf /etc/asterisk/minivm.conf,extensions_minivm.conf minivm.conf,app_minivm,)) +$(eval $(call BuildAsteriskModule,app-mixmonitor,Record a call and mix the audio,record a call and mix the audio during the recording,,,,app_mixmonitor,)) +$(eval $(call BuildAsteriskModule,app-originate,Originate a call,originating an outbound call and connecting it to a specified extension or application,,,,app_originate,)) +$(eval $(call BuildAsteriskModule,app-playtones,Playtones application,play a tone list,,,,app_playtones,)) +$(eval $(call BuildAsteriskModule,app-read,Variable read,a trivial application to read a variable,,,,app_read,)) +$(eval $(call BuildAsteriskModule,app-readexten,Extension to variable,a trivial application to read an extension into a variable,,,,app_readexten,)) +$(eval $(call BuildAsteriskModule,app-record,Record sound file,to record a sound file,,,,app_record,)) +$(eval $(call BuildAsteriskModule,app-sayunixtime,Say Unix time,an application to say Unix time,,,,app_sayunixtime,)) +$(eval $(call BuildAsteriskModule,app-senddtmf,Send DTMF digits,Sends arbitrary DTMF digits,,,,app_senddtmf,)) +$(eval $(call BuildAsteriskModule,app-sms,SMS,SMS support (ETSI ES 201 912 protocol 1),,,,app_sms,)) +$(eval $(call BuildAsteriskModule,app-stack,Stack applications, stack applications Gosub Return etc., +asterisk11-res-agi,,,app_stack,)) +$(eval $(call BuildAsteriskModule,app-system,System exec,support for executing system commands,,,,app_system,)) +$(eval $(call BuildAsteriskModule,app-talkdetect,File playback with audio detect,for file playback with audio detect,,,,app_talkdetect,)) +$(eval $(call BuildAsteriskModule,app-verbose,Verbose logging,Verbose logging application,,,,app_verbose,)) +$(eval $(call BuildAsteriskModule,app-waituntil,Sleep,support sleeping until the given epoch,,,,app_waituntil,)) +$(eval $(call BuildAsteriskModule,app-while,While loop,a while loop implementation,,,,app_while,)) +$(eval $(call BuildAsteriskModule,ccss,Call Completion Suplementary Services,alerting caller when a called party has become available,,/etc/asterisk/ccss.conf,ccss.conf,,,)) +$(eval $(call BuildAsteriskModule,cdr-core,Provides CDR,Call Detail Record,,/etc/asterisk/cdr.conf /etc/asterisk/cdr_custom.conf /etc/asterisk/cdr_manager.conf /etc/asterisk/cdr_odbc.conf /etc/asterisk/cdr_pgsql.conf /etc/asterisk/cdr_tds.conf,cdr_adaptive_odbc cdr cdr_custom cdr_manager cdr_syslog,app_cdr app_forkcdr cdr_adaptive_odbc cdr_custom cdr_manager cdr_syslog func_cdr,)) +$(eval $(call BuildAsteriskModule,cdr-csv,Provides CDR CSV,Call Detail Record with CSV support,,,,cdr_csv,)) +$(eval $(call BuildAsteriskModule,cdr-sqlite3,Provides CDR SQLITE3,Call Detail Record with SQLITE3 support,libsqlite3,,,cdr_sqlite3_custom,)) +$(eval $(call BuildAsteriskModule,codec-a-mu,Alaw to ulaw translation,translation between alaw and ulaw codecs,,,,codec_a_mu,)) +$(eval $(call BuildAsteriskModule,codec-adpcm,ADPCM text,ADPCM text ,,,,codec_adpcm,)) +$(eval $(call BuildAsteriskModule,codec-alaw,Signed linear to alaw translation,translation between signed linear and alaw codecs,,,,codec_alaw,)) +$(eval $(call BuildAsteriskModule,codec-g722,G.722,a high bit rate 48/56/64Kbps ITU standard codec,,,,codec_g722,)) +$(eval $(call BuildAsteriskModule,codec-g726,Signed linear to G.726 translation,translation between signed linear and ITU G.726-32kbps codecs,,,,codec_g726,)) +$(eval $(call BuildAsteriskModule,codec-gsm,linear to GSM translation,translate between signed linear and GSM,,,,codec_gsm,)) +$(eval $(call BuildAsteriskModule,codec-ilbc,linear to ILBC translation,translate between signed linear and ILBC,,,,codec_ilbc,)) +$(eval $(call BuildAsteriskModule,codec-lpc10,Linear to LPC10 translation,translate between signed linear and LPC10,,,,codec_lpc10,)) +$(eval $(call BuildAsteriskModule,codec-resample,resample sLinear audio,resample sLinear audio,,,,codec_resample,)) +$(eval $(call BuildAsteriskModule,codec-ulaw,Linear to ulaw translation,translate between signed linear and ulaw,,,,codec_ulaw,)) +$(eval $(call BuildAsteriskModule,curl,CURL,CURL support,asterisk11 +libcurl,,,func_curl res_curl,)) +$(eval $(call BuildAsteriskModule,format-g726,G.726,support for headerless G.726 16/24/32/40kbps data format,,,,format_g726,)) +$(eval $(call BuildAsteriskModule,format-g729,G.729,support for raw headerless G729 data,,,,format_g729,)) +$(eval $(call BuildAsteriskModule,format-gsm,GSM format,support for GSM format,,,,format_gsm,)) +$(eval $(call BuildAsteriskModule,format-h263,H263 format,support for H264 format,,,,format_h263,)) +$(eval $(call BuildAsteriskModule,format-h264,H264 format,support for H264 format,,,,format_h264,)) +$(eval $(call BuildAsteriskModule,format-ilbc,ILBC format,support for ILBC format,,,,format_ilbc,)) +$(eval $(call BuildAsteriskModule,format-pcm,PCM,support for PCM format,,,,format_pcm,)) +$(eval $(call BuildAsteriskModule,format-sln,Raw slinear format,support for raw slinear format,,,,format_sln,)) +$(eval $(call BuildAsteriskModule,format-vox,VOX format,support for ADPCM vox format,,,,format_vox,)) +$(eval $(call BuildAsteriskModule,func-blacklist,Blacklist on callerid,looking up the callerid number and see if it is blacklisted,,,,func_blacklist,)) +$(eval $(call BuildAsteriskModule,func-cut,CUT function,CUT function,,,,func_cut,)) +$(eval $(call BuildAsteriskModule,func-db,Database interaction,functions for interaction with the database,,,,func_db,)) +$(eval $(call BuildAsteriskModule,func-devstate,Blinky lights control,functions for manually controlled blinky lights,,,,func_devstate,)) +$(eval $(call BuildAsteriskModule,func-extstate,Hinted extension state,retrieving the state of a hinted extension for dialplan control,,,,func_extstate,)) +$(eval $(call BuildAsteriskModule,func-global,Global variable,global variable dialplan functions,,,,func_global,)) +$(eval $(call BuildAsteriskModule,func-channel,Channel info,Channel info dialplan function,,,,func_channel,)) +$(eval $(call BuildAsteriskModule,func-shell,Shell,support for shell execution,,,,func_shell,)) +$(eval $(call BuildAsteriskModule,func-uri,URI encoding and decoding,Encodes and decodes URI-safe strings,,,,func_uri,)) +$(eval $(call BuildAsteriskModule,func-vmcount,vmcount dialplan,a vmcount dialplan function,,,,func_vmcount,)) +$(eval $(call BuildAsteriskModule,chan-agent,Agents proxy channel, an implementation of agents proxy channel,,,,chan_agent,)) +$(eval $(call BuildAsteriskModule,chan-local,Local proxy channel, an implementation of local proxy channel,,,,chan_local,)) +$(eval $(call BuildAsteriskModule,chan-iax2,IAX2 channel,IAX support,asterisk11 +asterisk11-res-crypto,/etc/asterisk/iax.conf /etc/asterisk/iaxprov.conf,iax.conf iaxprov.conf,chan_iax2,)) +$(eval $(call BuildAsteriskModule,chan-motif,Jingle channel,Motif Jingle Channel Driver,+asterisk11-res-xmpp,/etc/asterisk/motif.conf /etc/asterisk/jingle.conf,motif.conf jingle.conf,chan_motif,)) +$(eval $(call BuildAsteriskModule,chan-mgcp,MGCP channel,the channel chan_mgcp ,asterisk11,/etc/asterisk/mgcp.conf,mgcp.conf,chan_mgcp,)) +$(eval $(call BuildAsteriskModule,chan-mobile,Mobile channel,the channel chan_mobile ,asterisk11 +bluez-libs,/etc/asterisk/chan_mobile.conf,chan_mobile.conf,chan_mobile,)) +$(eval $(call BuildAsteriskModule,chan-skinny,Skinny channel,the channel chan_skinny ,asterisk11,/etc/asterisk/skinny.conf,skinny.conf,chan_skinny,)) +$(eval $(call BuildAsteriskModule,chan-unistim,Unistim channel,channel driver for the UNISTIM (Unified Networks IP Stimulus) protocol,,/etc/asterisk/unistim.conf,unistim.conf,chan_unistim,)) +$(eval $(call BuildAsteriskModule,mysql,MySQL,MySQL support,+libmysqlclient,/etc/asterisk/app_mysql.conf /etc/asterisk/res_config_mysql.conf /etc/asterisk/cdr_mysql.conf,app_mysql.conf cdr_mysql.conf res_config_mysql.conf,app_mysql cdr_mysql res_config_mysql,)) +$(eval $(call BuildAsteriskModule,odbc,ODBC,ODBC support,+libpthread +libc +unixodbc,,*odbc*conf,*odbc*,)) +$(eval $(call BuildAsteriskModule,pbx-ael,Asterisk Extension Logic,support for symbolic Asterisk Extension Logic,,,extensions.ael,pbx_ael,)) +$(eval $(call BuildAsteriskModule,pbx-spool,Call Spool,outgoing call spool support,,,,pbx_spool,)) +$(eval $(call BuildAsteriskModule,pbx-lua,Lua,provides Lua resources for Asterisk,asterisk11 +libpthread +libc +liblua,/etc/asterisk/extensions.lua,extensions.lua,pbx_lua,)) +$(eval $(call BuildAsteriskModule,res-ael-share,Shareable AEL code,support for shareable AEL code mainly between internal and external modules,,,,res_ael_share,)) +$(eval $(call BuildAsteriskModule,res-agi,Asterisk Gateway Interface,support for the Asterisk Gateway Interface extension,,,,res_agi,)) +$(eval $(call BuildAsteriskModule,res-clioriginate,Calls via CLI,Originate calls via the CLI,,,,res_clioriginate,)) +$(eval $(call BuildAsteriskModule,res-crypto,Provide Crypto,Cryptographic Signature capability,,,,res_crypto,)) +$(eval $(call BuildAsteriskModule,res-http-websocket,WebSocket,WebSocket for internal HTTP server,,,,res_http_websocket,)) +$(eval $(call BuildAsteriskModule,res-monitor,Provide Monitor,Cryptographic Signature capability,,,,res_monitor,)) +$(eval $(call BuildAsteriskModule,res-pktccops,Provide PacketCable COPS,simple client/server model for supporting policy control over QoS signaling protocols,asterisk11,/etc/asterisk/res_pktccops.conf,res_pktccops.conf,res_pktccops,)) +$(eval $(call BuildAsteriskModule,res-smdi,Provide SMDI,Simple Message Desk Interface capability,,/etc/asterisk/smdi.conf,smdi.conf,res_smdi,)) +$(eval $(call BuildAsteriskModule,res-fax,FAX modules,Generic FAX resource for FAX technology resource modules,asterisk11 +asterisk11-res-timing-pthread,/etc/asterisk/res_fax.conf /etc/asterisk/udptl.conf,udptl.conf res_fax.conf,res_fax,)) +$(eval $(call BuildAsteriskModule,res-fax-spandsp,Spandsp T.38 and G.711,Spandsp T.38 and G.711 FAX Resource,asterisk11 +asterisk11-res-fax +libspandsp +libtiff,,,res_fax_spandsp,)) +$(eval $(call BuildAsteriskModule,res-musiconhold,MOH,Music On Hold support,asterisk11,/etc/asterisk/musiconhold.conf,musiconhold.conf,res_musiconhold,)) +$(eval $(call BuildAsteriskModule,res-srtp,SRTP,Secure RTP,+libsrtp +asterisk11-res-crypto,,,res_srtp,)) +$(eval $(call BuildAsteriskModule,res-timing-pthread,pthread Timing Interface,,,,,res_timing_pthread,)) +$(eval $(call BuildAsteriskModule,res-timing-timerfd,Timerfd Timing Interface,,,,,res_timing_timerfd,)) +$(eval $(call BuildAsteriskModule,res-xmpp,XMPP client and component module,reference module for interfacting Asterisk directly as a client or component with XMPP server,+libiksemel +libopenssl,/etc/asterisk/xmpp.conf,xmpp.conf,res_xmpp,)) +$(eval $(call BuildAsteriskModule,sounds,Sounds,contains sound files,asterisk11,,,,a* b* d* h* i* m* p* q* s* t*)) +$(eval $(call BuildAsteriskModule,voicemail,Voicemail,voicemail related modules,,/etc/asterisk/voicemail.conf,voicemail.conf,*voicemail res_adsi res_smdi,vm-*)) Index: feeds/packages/net/asterisk-11.x/files/asterisk.init =================================================================== --- feeds/packages/net/asterisk-11.x/files/asterisk.init (revision 0) +++ feeds/packages/net/asterisk-11.x/files/asterisk.init (revision 0) @@ -0,0 +1,26 @@ +#!/bin/sh /etc/rc.common +# Copyright (C) 2012 OpenWrt.org +START=99 + +APP=asterisk +OPTIONS= +DEST= +DEFAULT=$DEST/etc/default/$APP +BIN_FILE=$DEST/usr/sbin/$APP +PID_FILE=$DEST/var/run/$APP/$APP.pid + +start() { + [ -f $DEFAULT ] && . $DEFAULT + [ -d $DEST/var/run/asterisk ] || mkdir -p $DEST/var/run/asterisk + [ -d $DEST/var/log/asterisk ] || mkdir -p $DEST/var/log/asterisk + [ -d $DEST/var/spool/asterisk ] || mkdir -p $DEST/var/spool/asterisk + [ -d $DEST/var/lib ] || mkdir -p $DEST/var/lib + [ -h $DEST/var/lib/asterisk ] || ln -s /usr/lib/asterisk /var/lib/asterisk + + start-stop-daemon -S -x $BIN_FILE -p $PID_FILE -b -m -- $OPTIONS +} + +stop() { + start-stop-daemon -K -x $BIN_FILE -p $PID_FILE -q + rm -rf $PID_FILE +} Index: feeds/packages/net/asterisk-11.x/files/asterisk.default =================================================================== --- feeds/packages/net/asterisk-11.x/files/asterisk.default (revision 0) +++ feeds/packages/net/asterisk-11.x/files/asterisk.default (revision 0) @@ -0,0 +1,4 @@ +## startup options for /etc/init.d/asterisk + +ENABLE_ASTERISK="yes" +OPTIONS="" _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel