update asterisk to 1.2.16, add chan-oss subpackage (closes: #1492)
[openwrt/svn-archive/archive.git] / net / asterisk / Makefile
index 49e228a0c534e4d88137ca2ed35ba02d2fd45d99..b1ce66bd47bbdd0ce60bad82d74c271226d6b24d 100644 (file)
@@ -9,12 +9,13 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=asterisk
-PKG_VERSION:=1.2.1
+PKG_VERSION:=1.2.16
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=http://ftp.digium.com/pub/asterisk/old-releases/ ftp://ftp.digium.com/pub/asterisk/old-releases/
-PKG_MD5SUM:=04657086791e80f319c0d728af705001
+PKG_SOURCE_URL:=http://ftp.digium.com/pub/asterisk/old-releases/ \
+       ftp://ftp.digium.com/pub/asterisk/old-releases
+PKG_MD5SUM:=88cfcd5c3b2a8f2504e561cb93546299
 PKG_CAT:=zcat
 
 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
@@ -31,13 +32,13 @@ define Package/asterisk/Default
        protocols, and can interoperate with almost all standards-based telephony \\\
        equipment using relatively inexpensive hardware.
   URL:=http://www.asterisk.org/
+  SUBMENU:=asterisk (Complete Open Source PBX)
 endef
 
 define Package/asterisk
   $(call Package/asterisk/Default)
   DEPENDS:=+libncurses +libpthread
-  TITLE:=Complete open source PBX
-  MENU:=1
+  TITLE:=Complete Open Source PBX
 endef
 
 define Package/asterisk/conffiles
@@ -66,11 +67,13 @@ endef
 
 define Package/asterisk-mini
   $(call Package/asterisk/Default)
-  DEPENDS:=asterisk
-  TITLE:=Minimal open source PBX
+  DEPENDS:=+libncurses +libpthread
+  PROVIDES:=asterisk
+  TITLE:=Minimal Open Source PBX
   DESCRIPTION+=\\\
        \\\
        This package contains only the following modules: \\\
+        - app_dial\\\
        - chan_iax2\\\
        - chan_local\\\
        - chan_sip\\\
@@ -101,6 +104,78 @@ define Package/asterisk-mini/conffiles
 /etc/asterisk/sip.conf
 endef
 
+define Package/asterisk-mysql
+  $(call Package/asterisk/Default)
+  DEPENDS:=asterisk +libmysqlclient
+  TITLE:=MySQL support
+  DESCRIPTION+=\\\
+       \\\
+       This package contains MySQL support modules for Asterisk.
+endef
+
+define Package/asterisk-mysql/conffiles
+/etc/asterisk/cdr_mysql.conf
+endef
+
+define Package/asterisk-pgsql
+  $(call Package/asterisk/Default)
+  DEPENDS:=asterisk +libpq
+  TITLE:=PostgreSQL support
+  DESCRIPTION+=\\\
+       \\\
+       This package contains PostgreSQL support modules for Asterisk.
+endef
+
+define Package/asterisk-pgsql/conffiles
+/etc/asterisk/cdr_pgsql.conf
+endef
+
+define Package/asterisk-sqlite
+  $(call Package/asterisk/Default)
+  DEPENDS:=asterisk +libsqlite2
+  TITLE:=SQLite modules
+  DESCRIPTION+=\\\
+       \\\
+       This package contains SQLite support modules for Asterisk.
+endef
+
+define Package/asterisk-sounds
+  $(call Package/asterisk)
+  MENU:=0
+  DEPENDS:=asterisk
+  TITLE:=Sound files
+  DESCRIPTION+=\\\
+    \\\
+    This package contains sound files for Asterisk.
+endef
+
+define Package/asterisk-voicemail
+  $(call Package/asterisk/Default)
+  DEPENDS:=asterisk
+  TITLE:=Voicemail support
+  DESCRIPTION+=\\\
+       \\\
+       This package contains voicemail related modules for Asterisk.
+endef
+
+define Package/asterisk-voicemail/conffiles
+/etc/asterisk/voicemail.conf
+endef
+
+define Package/asterisk-app-meetme
+  $(call Package/asterisk/Default)
+  DEPENDS:=asterisk +zaptel-libtonezone
+  TITLE:=MeetMe Confererencing support
+  DESCRIPTION+=\\\
+        \\\
+        This package provides the application MeetMe and conferencing support to \\\
+        Asterisk.
+endef
+
+define Package/asterisk-app-meetme/conffiles
+/etc/asterisk/meetme.conf
+endef
+
 define Package/asterisk-chan-bluetooth
   $(call Package/asterisk/Default)
   DEPENDS:=asterisk +bluez-libs
@@ -141,6 +216,19 @@ define Package/asterisk-chan-mgcp/conffiles
 /etc/asterisk/mgcp.conf
 endef
 
+define Package/asterisk-chan-oss
+  $(call Package/asterisk/Default)
+  DEPENDS:=asterisk
+  TITLE:=chan-oss
+  DESCRIPTION+=\\\
+       \\\
+       Channel driver for OSS sound cards
+endef
+
+define Package/asterisk-chan-oss/conffiles
+/etc/asterisk/oss.conf
+endef
+
 define Package/asterisk-chan-skinny
   $(call Package/asterisk/Default)
   DEPENDS:=asterisk
@@ -209,110 +297,59 @@ define Package/asterisk-res-agi
        Asterisk.
 endef
 
-define Package/asterisk-mysql
-  $(call Package/asterisk/Default)
-  DEPENDS:=asterisk +libmysqlclient
-  TITLE:=MySQL support
-  DESCRIPTION+=\\\
-       \\\
-       This package contains MySQL support modules for Asterisk.
-endef
-
-define Package/asterisk-mysql/conffiles
-/etc/asterisk/cdr_mysql.conf
-endef
-
-define Package/asterisk-pgsql
+define Package/asterisk-res-crypto
   $(call Package/asterisk/Default)
-  DEPENDS:=asterisk +libpq
-  TITLE:=PostgreSQL support
+  DEPENDS:=asterisk +libopenssl
+  TITLE:=Cryptographic Digital Signatures support
   DESCRIPTION+=\\\
-       \\\
-       This package contains PostgreSQL support modules for Asterisk.
-endef
-
-define Package/asterisk-pgsql/conffiles
-/etc/asterisk/cdr_pgsql.conf
+        \\\
+        This package provides Cryptographic Digital Signatures support to \\\
+        Asterisk.
 endef
 
-define Package/asterisk-sqlite
-  $(call Package/asterisk/Default)
-  DEPENDS:=asterisk +libsqlite2
-  TITLE:=SQLite modules
-  DESCRIPTION+=\\\
-       \\\
-       This package contains SQLite support modules for Asterisk.
-endef
-
-define Package/asterisk-sounds
-  $(call Package/asterisk)
-  MENU:=0
-  DEPENDS:=asterisk
-  TITLE:=Sound files
-  DESCRIPTION+=\\\
-    \\\
-    This package contains sound files for Asterisk.
-endef
-
-define Package/asterisk-voicemail
-  $(call Package/asterisk/Default)
-  DEPENDS:=asterisk
-  TITLE:=Voicemail support
-  DESCRIPTION+=\\\
-       \\\
-       This package contains voicemail related modules for Asterisk.
-endef
-
-define Package/asterisk-voicemail/conffiles
-/etc/asterisk/voicemail.conf
-endef
-
-ifneq ($(SDK),)
-# Make sure the options below are enabled when building with the SDK
-  CONFIG_PACKAGE_asterisk-mysql:=m
-  CONFIG_PACKAGE_asterisk-pgsql:=m
-  CONFIG_PACKAGE_asterisk-sqlite:=m
-  CONFIG_PACKAGE_asterisk-chan-bluetooth:=m
-  CONFIG_PACKAGE_asterisk-chan-h323:=m
-  CONFIG_PACKAGE_asterisk-codec-speex:=m
-endif
 
 EXTRA_CFLAGS:= -I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include
 EXTRA_LDFLAGS:= -L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib
 
-ifneq ($(CONFIG_PACKAGE_asterisk-mysql),)
+ifneq ($(SDK)$(CONFIG_PACKAGE_asterisk-mysql),)
   EXTRA_CFLAGS+= -I$(STAGING_DIR)/usr/include/mysql
   EXTRA_LDFLAGS+= -L$(STAGING_DIR)/usr/lib/mysql
   EXTRA_APP_MODULES+= app_sql_mysql.so
   EXTRA_CDR_MODULES+= cdr_mysql.so
   EXTRA_RES_MODULES+= res_config_mysql.so
 endif
-ifneq ($(CONFIG_PACKAGE_asterisk-pgsql),)
+ifneq ($(SDK)$(CONFIG_PACKAGE_asterisk-pgsql),)
   EXTRA_APP_MODULES+= app_sql_postgres.so
   EXTRA_CDR_MODULES+= cdr_pgsql.so
 endif
-ifneq ($(CONFIG_PACKAGE_asterisk-sqlite),)
+ifneq ($(SDK)$(CONFIG_PACKAGE_asterisk-sqlite),)
   EXTRA_CDR_MODULES+= cdr_sqlite.so
 endif
-ifneq ($(CONFIG_PACKAGE_asterisk-chan-bluetooth),)
+ifneq ($(SDK)$(CONFIG_PACKAGE_asterisk-app-meetme),)
+  EXTRA_APP_MODULES+= app_meetme.so
+endif
+ifneq ($(SDK)$(CONFIG_PACKAGE_asterisk-chan-bluetooth),)
   EXTRA_CHAN_MODULES+= chan_bluetooth.so
 endif
-ifneq ($(CONFIG_PACKAGE_asterisk-chan-h323),)
+ifneq ($(SDK)$(CONFIG_PACKAGE_asterisk-chan-h323),)
   EXTRA_DEFINES+= \
        OPENH323DIR="$(BUILD_DIR)/openh323" \
        PWLIBDIR="$(BUILD_DIR)/pwlib" \
        CXXLIBS="-nodefaultlibs -luClibc++ -lc -lm -lgcc"
   EXTRA_CHAN_MODULES+= chan_h323.so
 endif
-ifneq ($(CONFIG_PACKAGE_asterisk-codec-speex),)
+ifneq ($(SDK)$(CONFIG_PACKAGE_asterisk-codec-speex),)
   EXTRA_CFLAGS+= -I$(STAGING_DIR)/usr/include/speex
   EXTRA_CODEC_MODULES+= codec_speex.so
 endif
+ifneq ($(SDK)$(CONFIG_PACKAGE_asterisk-res-crypto),)
+  EXTRA_RES_MODULES+= res_crypto.so
+endif
 
 define Build/Configure
 endef
 
-ifneq ($(CONFIG_PACKAGE_asterisk-chan-h323),)
+ifneq ($(SDK)$(CONFIG_PACKAGE_asterisk-chan-h323),)
   define Build/Compile/chan-h323
        $(MAKE) -C "$(PKG_BUILD_DIR)/channels/h323" \
                $(TARGET_CONFIGURE_OPTS) \
@@ -371,10 +408,12 @@ define Package/asterisk/install
                rm -f chan_h323.so ; \
                rm -f chan_mgcp.so ; \
                rm -f chan_skinny.so ; \
+               rm -f chan_oss.so ; \
                rm -f {codec,format}_ilbc.so ; \
                rm -f codec_lpc10.so ; \
                rm -f pbx_dundi.so ; \
                rm -f res_agi.so ; \
+               rm -f res_crypto.so ; \
        )
        (cd $(1)/etc/asterisk; \
                rm -f   *odbc* *mysql* *postgres* *pgsql* *voicemail* *adsi* *oss* *alsa* \
@@ -383,6 +422,7 @@ define Package/asterisk/install
                rm -f bluetooth.conf ; \
                rm -f mgcp.conf ; \
                rm -f skinny.conf ; \
+               rm -f oss.conf ; \
                rm -f dundi.conf ; \
        )
        $(INSTALL_DATA) ./files/modules.conf $(1)/etc/asterisk/
@@ -419,7 +459,7 @@ endef
 
 define Package/asterisk-mysql/install
        $(INSTALL_DIR) $(1)/etc/asterisk
-       install -m0600 $(PKG_BUILD_DIR)/configs/cdr_mysql.conf.sample $(1)/etc/asterisk/cdr_mysql.conf
+       $(INSTALL_CONF) $(PKG_BUILD_DIR)/configs/cdr_mysql.conf.sample $(1)/etc/asterisk/cdr_mysql.conf
        $(INSTALL_DIR) $(1)/usr/lib/asterisk/modules
        $(INSTALL_BIN) $(PKG_BUILD_DIR)/apps/app_sql_mysql.so $(1)/usr/lib/asterisk/modules/
        $(INSTALL_BIN) $(PKG_BUILD_DIR)/cdr/cdr_mysql.so $(1)/usr/lib/asterisk/modules/
@@ -427,7 +467,7 @@ endef
 
 define Package/asterisk-pgsql/install
        $(INSTALL_DIR) $(1)/etc/asterisk
-       install -m0600 $(PKG_BUILD_DIR)/configs/cdr_pgsql.conf.sample $(1)/etc/asterisk/cdr_pgsql.conf
+       $(INSTALL_CONF) $(PKG_BUILD_DIR)/configs/cdr_pgsql.conf.sample $(1)/etc/asterisk/cdr_pgsql.conf
        $(INSTALL_DIR) $(1)/usr/lib/asterisk/modules
        $(INSTALL_BIN) $(PKG_BUILD_DIR)/apps/app_sql_postgres.so $(1)/usr/lib/asterisk/modules/
        $(INSTALL_BIN) $(PKG_BUILD_DIR)/cdr/cdr_pgsql.so $(1)/usr/lib/asterisk/modules/
@@ -455,6 +495,13 @@ define Package/asterisk-voicemail/install
        $(CP) $(PKG_BUILD_DIR)/sounds/vm-*.gsm $(1)/usr/lib/asterisk/sounds/
 endef
 
+define Package/asterisk-app-meetme/install
+       $(INSTALL_DIR) $(1)/etc/asterisk
+       $(INSTALL_DATA) $(PKG_BUILD_DIR)/configs/meetme.conf.sample $(1)/etc/asterisk/meetme.conf
+       $(INSTALL_DIR) $(1)/usr/lib/asterisk/modules
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/apps/app_meetme.so $(1)/usr/lib/asterisk/modules/
+endef
+
 define Package/asterisk-chan-bluetooth/install
        $(INSTALL_DIR) $(1)/etc/asterisk
        $(INSTALL_DATA) $(PKG_BUILD_DIR)/configs/bluetooth.conf $(1)/etc/asterisk/bluetooth.conf
@@ -476,6 +523,13 @@ define Package/asterisk-chan-mgcp/install
        $(INSTALL_BIN) $(PKG_BUILD_DIR)/channels/chan_mgcp.so $(1)/usr/lib/asterisk/modules/
 endef
 
+define Package/asterisk-chan-oss/install
+       $(INSTALL_DIR) $(1)/etc/asterisk
+       $(INSTALL_DATA) $(PKG_BUILD_DIR)/configs/oss.conf.sample $(1)/etc/asterisk/oss.conf
+       $(INSTALL_DIR) $(1)/usr/lib/asterisk/modules
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/channels/chan_oss.so $(1)/usr/lib/asterisk/modules/
+endef
+
 define Package/asterisk-chan-skinny/install
        $(INSTALL_DIR) $(1)/etc/asterisk
        $(INSTALL_DATA) $(PKG_BUILD_DIR)/configs/skinny.conf.sample $(1)/etc/asterisk/skinny.conf
@@ -512,19 +566,37 @@ define Package/asterisk-res-agi/install
        $(INSTALL_BIN) $(PKG_BUILD_DIR)/res/res_agi.so $(1)/usr/lib/asterisk/modules/
 endef
 
+define Package/asterisk-res-crypto/install
+       $(INSTALL_DIR) $(1)/usr/lib/asterisk/modules
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/res/res_crypto.so $(1)/usr/lib/asterisk/modules/
+endef
+
+define Build/InstallDev
+       mkdir -p $(STAGING_DIR)/usr/include
+       $(CP)   $(PKG_INSTALL_DIR)/usr/include/asterisk \
+               $(STAGING_DIR)/usr/include/
+endef
+
+define Build/UninstallDev
+       rm -rf  $(STAGING_DIR)/usr/include/asterisk
+endef
+
 $(eval $(call BuildPackage,asterisk))
-$(eval $(call BuildPackage,asterisk-mini))
 $(eval $(call BuildPackage,asterisk-mysql))
 $(eval $(call BuildPackage,asterisk-pgsql))
 $(eval $(call BuildPackage,asterisk-sqlite))
-$(eval $(call BuildPackage,asterisk-voicemail))
 $(eval $(call BuildPackage,asterisk-sounds))
+$(eval $(call BuildPackage,asterisk-voicemail))
+$(eval $(call BuildPackage,asterisk-app-meetme))
 $(eval $(call BuildPackage,asterisk-chan-bluetooth))
 $(eval $(call BuildPackage,asterisk-chan-h323))
 $(eval $(call BuildPackage,asterisk-chan-mgcp))
+$(eval $(call BuildPackage,asterisk-chan-oss))
 $(eval $(call BuildPackage,asterisk-chan-skinny))
 $(eval $(call BuildPackage,asterisk-codec-ilbc))
 $(eval $(call BuildPackage,asterisk-codec-lpc10))
 $(eval $(call BuildPackage,asterisk-codec-speex))
 $(eval $(call BuildPackage,asterisk-pbx-dundi))
 $(eval $(call BuildPackage,asterisk-res-agi))
+$(eval $(call BuildPackage,asterisk-res-crypto))
+$(eval $(call BuildPackage,asterisk-mini))