[packages] asterisk-1.6.x upgrade to 1.6.2.14 and add app_originate
[openwrt/svn-archive/archive.git] / net / asterisk-1.6.x / Makefile
index 719840e2b1edcef57d74e70897abdc8a466f6d4e..0a8baef14740fff3872b9820513ec9f99517a421 100644 (file)
@@ -1,5 +1,5 @@
 #
-# Copyright (C) 2008-2009 OpenWrt.org
+# Copyright (C) 2008-2010 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -8,12 +8,12 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=asterisk
-PKG_VERSION:=1.6.2.0-rc6
+PKG_VERSION:=1.6.2.14
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=http://downloads.digium.com/pub/asterisk/releases/
-PKG_MD5SUM:=770a80d306ccc928481ff9030d7fec38
+PKG_MD5SUM:=4f0414c9b2d449222b2fc7096cbaffe7
 
 include $(INCLUDE_DIR)/package.mk
 
@@ -22,6 +22,7 @@ define Package/asterisk16/Default
   SECTION:=net
   CATEGORY:=Network
   URL:=http://www.asterisk.org/
+  MAINTAINER:=Hans Zandbelt <hans.zandbelt@gmail.com>
 endef
 
 define Package/asterisk16/Default/description
@@ -89,18 +90,6 @@ $(call Package/asterisk16/Default/description)
  Asterisk.
 endef
 
-define Package/asterisk16-chan-local
-$(call Package/asterisk16/Default)
-  TITLE:=chan_local support
-  DEPENDS:= +asterisk16
-endef
-
-define Package/asterisk16-chan-local/description
-$(call Package/asterisk16/Default/description)
- This package provides chan_local support to
- Asterisk.
-endef
-
 define Package/asterisk16-cdr
 $(call Package/asterisk16/Default)
   TITLE:=CDR support
@@ -125,18 +114,6 @@ $(call Package/asterisk16/Default/description)
  Asterisk.
 endef
 
-define Package/asterisk16-format-g729
-$(call Package/asterisk16/Default)
-  TITLE:=G.729 support
-  DEPENDS:= +asterisk16
-endef
-
-define Package/asterisk16-format-g729/description
-$(call Package/asterisk16/Default/description)
- This package provides G.729 support to
- Asterisk.
-endef
-
 define Package/asterisk16-chan-gtalk
 $(call Package/asterisk16/Default)
   TITLE:=GTalk support
@@ -149,19 +126,48 @@ $(call Package/asterisk16/Default/description)
  support to Asterisk.
 endef
 
-define Package/asterisk16-app-system
+define Package/asterisk16-curl
 $(call Package/asterisk16/Default)
-  TITLE:=System exec support
-  DEPENDS:= +asterisk16
+  TITLE:=CURL support
+  DEPENDS:= +asterisk16 +libcurl
 endef
 
-define Package/asterisk16-app-system/description
+define Package/asterisk16-curl/description
 $(call Package/asterisk16/Default/description)
- This package provides support for executing system commands in Asterisk.
+ This package provides CURL
+ support to Asterisk.
 endef
+ifneq ($(SDK)$(CONFIG_PACKAGE_asterisk16-app-meetme),)
+  CONFIGURE_ARGS+= \
+       --with-dahdi="$(STAGING_DIR)/usr"
+else
+  CONFIGURE_ARGS+= \
+       --without-dahdi
+endif
+
+ifneq ($(SDK)$(CONFIG_PACKAGE_asterisk16-chan-gtalk),)
+  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_asterisk16-curl),)
+  CONFIGURE_ARGS+= \
+       --with-curl="$(STAGING_DIR)/usr"
+else
+  CONFIGURE_ARGS+= \
+       --without-curl
+endif
 
 CONFIGURE_ARGS+= \
-       --without-curl \
        --without-curses \
        --with-gsm=internal \
        --without-gtk \
@@ -189,31 +195,10 @@ CONFIGURE_ARGS+= \
        --without-vorbis \
        --without-vpb \
        --with-z="$(STAGING_DIR)/usr" \
-       --disable-xmldoc \
-
-ifneq ($(SDK)$(CONFIG_PACKAGE_asterisk16-app-meetme),)
-  CONFIGURE_ARGS+= \
-       --with-dahdi="$(STAGING_DIR)/usr"
-else
-  CONFIGURE_ARGS+= \
-       --without-dahdi
-endif
-
-ifneq ($(SDK)$(CONFIG_PACKAGE_asterisk16-chan-gtalk),)
-  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
+       --disable-xmldoc
 
-EXTRA_CFLAGS:= $(TARGET_CPPFLAGS)
-EXTRA_LDFLAGS:= $(TARGET_LDFLAGS)
+EXTRA_CFLAGS+= $(TARGET_CPPFLAGS)
+EXTRA_LDFLAGS+= $(TARGET_LDFLAGS)
 
 define Build/Configure
        -rm $(PKG_BUILD_DIR)/menuselect.makeopts
@@ -225,7 +210,7 @@ define Build/Compile
                include/asterisk/version.h \
                include/asterisk/buildopts.h defaults.h \
                makeopts.embed_rules
-       ASTCFLAGS="$(EXTRA_CFLAGS) -DLOW_MEMORY $(TARGET_CFLAGS)" \
+       ASTCFLAGS="$(EXTRA_CFLAGS) -DLOW_MEMORY" \
        ASTLDFLAGS="$(EXTRA_LDFLAGS)" \
        $(MAKE) -C "$(PKG_BUILD_DIR)" \
                ASTVARLIBDIR="/usr/lib/asterisk" \
@@ -238,7 +223,7 @@ define Build/Compile
 endef
 
 #define Build/InstallDev
-#      mkdir -p $(1)/usr/include/asterisk/
+#      $(INSTALL_DIR) $(1)/usr/include/asterisk/
 #      $(CP) $(PKG_INSTALL_DIR)/usr/include/asterisk/*.h $(1)/usr/include/asterisk/
 #      $(CP) $(PKG_INSTALL_DIR)/usr/include/asterisk.h $(1)/usr/include/
 #endef
@@ -250,6 +235,7 @@ define Package/asterisk16/conffiles
 /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
@@ -260,7 +246,7 @@ endef
 define Package/asterisk16/install
        $(INSTALL_DIR) $(1)/etc/asterisk
        for f in asterisk extensions features \
-               logger manager modules \
+               indications logger manager modules \
                sip sip_notify rtp; do \
                $(CP) $(PKG_INSTALL_DIR)/etc/asterisk/$$$$f.conf $(1)/etc/asterisk/ ; \
        done
@@ -270,7 +256,7 @@ define Package/asterisk16/install
                codec_ulaw codec_gsm \
                format_gsm format_pcm format_wav format_wav_gsm \
                pbx_config \
-               func_strings func_timeout func_callerid; do \
+               func_strings func_timeout func_callerid func_logic; do \
                $(CP) $(PKG_INSTALL_DIR)/usr/lib/asterisk/modules/$$$$f.so $(1)/usr/lib/asterisk/modules/ ; \
        done
        $(INSTALL_DIR) $(1)/usr/sbin
@@ -343,11 +329,6 @@ define Package/asterisk16-chan-iax2/install
        $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/asterisk/modules/chan_iax2.so $(1)/usr/lib/asterisk/modules/
 endef
 
-define Package/asterisk16-chan-local/install
-       $(INSTALL_DIR) $(1)/usr/lib/asterisk/modules
-       $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/asterisk/modules/chan_local.so $(1)/usr/lib/asterisk/modules/
-endef
-
 define Package/asterisk16-cdr/install
        $(INSTALL_DIR) $(1)/etc/asterisk
        $(INSTALL_DATA) $(PKG_INSTALL_DIR)/etc/asterisk/cdr*.conf $(1)/etc/asterisk/
@@ -362,11 +343,6 @@ define Package/asterisk16-res-musiconhold/install
        $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/asterisk/modules/res_musiconhold.so $(1)/usr/lib/asterisk/modules/
 endef
 
-define Package/asterisk16-format-g729/install
-       $(INSTALL_DIR) $(1)/usr/lib/asterisk/modules
-       $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/asterisk/modules/format_g729.so $(1)/usr/lib/asterisk/modules/
-endef
-
 define Package/asterisk16-chan-gtalk/conffiles
 /etc/asterisk/gtalk.conf
 /etc/asterisk/jabber.conf
@@ -381,9 +357,31 @@ define Package/asterisk16-chan-gtalk/install
        $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/asterisk/modules/res_jabber.so $(1)/usr/lib/asterisk/modules/
 endef
 
-define Package/asterisk16-app-system/install
+define Package/asterisk16-curl/install
        $(INSTALL_DIR) $(1)/usr/lib/asterisk/modules
-       $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/asterisk/modules/app_system.so $(1)/usr/lib/asterisk/modules/
+       $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/asterisk/modules/func_curl.so $(1)/usr/lib/asterisk/modules/
+       $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/asterisk/modules/res_curl.so $(1)/usr/lib/asterisk/modules/
+endef
+
+define BuildAsterisk16ModuleTemplate
+
+  define Package/asterisk16-$(subst _,-,$(1))
+  $$(call Package/asterisk16/Default)
+    TITLE:=$(2) support
+    DEPENDS:= +asterisk16
+  endef
+
+  define Package/asterisk16-$(subst _,-,$(1))/description
+  $$(call Package/asterisk16/Default/description)
+    This package provides support $(3) in Asterisk.
+  endef
+
+  define Package/asterisk16-$(subst _,-,$(1))/install
+       $(INSTALL_DIR) $$(1)/usr/lib/asterisk/modules
+       $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/asterisk/modules/$(1).so $$(1)/usr/lib/asterisk/modules/
+  endef
+
+  $$(eval $$(call BuildPackage,asterisk16-$(subst _,-,$(1))))
 endef
 
 $(eval $(call BuildPackage,asterisk16))
@@ -391,9 +389,47 @@ $(eval $(call BuildPackage,asterisk16-voicemail))
 $(eval $(call BuildPackage,asterisk16-sounds))
 #$(eval $(call BuildPackage,asterisk16-app-meetme))
 $(eval $(call BuildPackage,asterisk16-chan-iax2))
-$(eval $(call BuildPackage,asterisk16-chan-local))
 $(eval $(call BuildPackage,asterisk16-cdr))
 $(eval $(call BuildPackage,asterisk16-res-musiconhold))
-$(eval $(call BuildPackage,asterisk16-format-g729))
 $(eval $(call BuildPackage,asterisk16-chan-gtalk))
-$(eval $(call BuildPackage,asterisk16-app-system))
+$(eval $(call BuildPackage,asterisk16-curl))
+$(eval $(call BuildAsterisk16ModuleTemplate,app_authenticate,Authenticate,support for executing arbitrary authenticate commands))
+$(eval $(call BuildAsterisk16ModuleTemplate,app_chanisavail,Channel availability check,support for checking if a channel is available))
+$(eval $(call BuildAsterisk16ModuleTemplate,app_chanspy,Channel listen in,support for listening in on any channel))
+$(eval $(call BuildAsterisk16ModuleTemplate,app_directed_pickup,Directed call pickup,support for directed call pickup))
+$(eval $(call BuildAsterisk16ModuleTemplate,app_exec,Exec application,support for application execution))
+$(eval $(call BuildAsterisk16ModuleTemplate,app_minivm,Minimal voicemail system,a voicemail system in small building blocks working together based on the Comedian Mail voicemail system))
+$(eval $(call BuildAsterisk16ModuleTemplate,app_readexten,Extension to variable,a trivial application to read an extension into a variable))
+$(eval $(call BuildAsterisk16ModuleTemplate,app_read,Variable read,a trivial application to read a variable))
+$(eval $(call BuildAsterisk16ModuleTemplate,app_sayunixtime,Say Unix time,an application to say Unix time))
+$(eval $(call BuildAsterisk16ModuleTemplate,app_sms,SMS,SMS support (ETSI ES 201 912 protocol 1)))
+$(eval $(call BuildAsterisk16ModuleTemplate,app_stack,Stack applications, stack applications Gosub Return etc.))
+$(eval $(call BuildAsterisk16ModuleTemplate,app_system,System exec,support for executing system commands))
+$(eval $(call BuildAsterisk16ModuleTemplate,app_talkdetect,File playback with audio detect,for file playback with audio detect))
+$(eval $(call BuildAsterisk16ModuleTemplate,app_waituntil,Sleep,support sleeping until the given epoch))
+$(eval $(call BuildAsterisk16ModuleTemplate,app_while,While loop,a while loop implementation))
+$(eval $(call BuildAsterisk16ModuleTemplate,chan_agent,Agents proxy channel, an implementation of agents proxy channel))
+$(eval $(call BuildAsterisk16ModuleTemplate,chan_local,Local proxy channel, an implementation of local proxy channel))
+$(eval $(call BuildAsterisk16ModuleTemplate,codec_ulaw,Signed linear to ulaw translation,translation between signed linear and ulaw codecs))
+$(eval $(call BuildAsterisk16ModuleTemplate,codec_a_mu,Alaw to ulaw translation,translation between alaw and ulaw codecs))
+$(eval $(call BuildAsterisk16ModuleTemplate,codec_g726,Signed linear to G.726 translation,translation between signed linear and ITU G.726-32kbps codecs))
+$(eval $(call BuildAsterisk16ModuleTemplate,format_g726,G.726,support for headerless G.726 16/24/32/40kbps data format))
+$(eval $(call BuildAsterisk16ModuleTemplate,format_g729,G.729,support for raw headerless G729 data))
+$(eval $(call BuildAsterisk16ModuleTemplate,format_sln,Raw slinear format,support for raw slinear format))
+$(eval $(call BuildAsterisk16ModuleTemplate,format_sln16,Raw slinear 16 format,support for Raw slinear 16 format))
+$(eval $(call BuildAsterisk16ModuleTemplate,func_db,Database interaction,functions for interaction with the database))
+$(eval $(call BuildAsterisk16ModuleTemplate,func_devstate,Blinky lights control,functions for manually controlled blinky lights))
+$(eval $(call BuildAsterisk16ModuleTemplate,func_vmcount,vmcount dialplan,a vmcount dialplan function))
+$(eval $(call BuildAsterisk16ModuleTemplate,func_extstate,Hinted extension state,retrieving the state of a hinted extension for dialplan control))
+$(eval $(call BuildAsterisk16ModuleTemplate,func_global,Global variable,global variable dialplan functions))
+$(eval $(call BuildAsterisk16ModuleTemplate,func_shell,Shell,support for shell execution))
+$(eval $(call BuildAsterisk16ModuleTemplate,pbx_ael,Asterisk Extension Logic,support for symbolic Asterisk Extension Logic))
+$(eval $(call BuildAsterisk16ModuleTemplate,res_ael_share,Shareable AEL code,support for shareable AEL code mainly between internal and external modules))
+$(eval $(call BuildAsterisk16ModuleTemplate,pbx_spool,Call Spool,outgoing call spool support))
+$(eval $(call BuildAsterisk16ModuleTemplate,res_agi,Asterisk Gateway Interface,support for the Asterisk Gateway Interface extension))
+$(eval $(call BuildAsterisk16ModuleTemplate,app_alarmreceiver,Alarm receiver,Central Station Alarm receiver for Ademco Contact ID))
+$(eval $(call BuildAsterisk16ModuleTemplate,app_setcallerid,Set callerid,support for setting callerid))
+$(eval $(call BuildAsterisk16ModuleTemplate,app_verbose,Verbose logging,Verbose logging application))
+$(eval $(call BuildAsterisk16ModuleTemplate,func_channel,Channel info,Channel info dialplan function))
+$(eval $(call BuildAsterisk16ModuleTemplate,func_blacklist,Blacklist on callerid,looking up the callerid number, and see if it is blacklisted))
+$(eval $(call BuildAsterisk16ModuleTemplate,app_originate,Originate a call,originating an outbound call and connecting it to a specified extension or application))