Hello folks, I have made several enhancements to latest Asterisk11 package. If you tried previous versions, I am sure, you were unable to run Asterisk11 on non-x86 platforms due to badly compiled built-in PJ libraries. With those latest changes I made I am finally able to run asterisk11 on OpenWrt on x86 and mips platforms (ar71xx boxes - tp-link 1043ND and tp-link wdr3600).
Here is the proof (shortened output): root@OpenWrt:~# asterisk -r ... Connected to Asterisk 11.1.2 currently running on OpenWrt (pid = 1152) OpenWrt*CLI> ... root@OpenWrt:~# uname -a Linux OpenWrt 3.6.11 #4 Sun Jan 13 14:43:03 CET 2013 mips GNU/Linux I would love to kindly ask you to review my Makefile and if you can, to test it on more platforms if it runs well. Thank you so much! Jiri Slachta, CESNET, z.s.p.o. Signed-off-by: Jiri Slachta <slac...@cesnet.cz> Index: net/asterisk-11.x/Makefile =================================================================== --- net/asterisk-11.x/Makefile (revision 0) +++ net/asterisk-11.x/Makefile (revision 0) @@ -0,0 +1,385 @@ +# +# 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/ccss.conf +/etc/asterisk/modules.conf +/etc/asterisk/extconfig.conf +/etc/asterisk/extensions.conf +/etc/asterisk/features.conf +/etc/asterisk/indications.conf +/etc/asterisk/logger.conf +/etc/asterisk/manager.conf +/etc/asterisk/rtp.conf +/etc/asterisk/sip.conf +/etc/asterisk/sip_notify.conf +/etc/asterisk/udptl.conf +/etc/default/asterisk +/etc/init.d/asterisk +endef + +AST_CFG_FILES:= \ + asterisk.conf acl.conf ccss.conf extconfig.conf extensions.conf features.conf indications.conf logger.conf manager.conf modules.conf \ + rtp.conf sip_notify.conf sip.conf udptl.conf +AST_EMB_MODULES:=\ + app_dial app_echo app_macro app_playback codec_gsm codec_ulaw format_gsm format_pcm format_wav format_wav_gsm func_callerid \ + func_logic func_strings func_timeout chan_sip chan_local pbx_config res_crypto res_http_websocket res_rtp_asterisk res_rtp_multicast + +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 + +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 +PJLIB_CONFIGURE_ARGS= \ + --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 \ + --disable-opencore-amrnb \ + --disable-video \ + --disable-sdl \ + --disable-ffmpeg \ + --disable-v4l2 + +define Build/Prepare + $(call Build/Prepare/Default) +endef + +define Build/Configure + $(call Build/Configure/Default, \ + $(PJLIB_CONFIGURE_ARGS), \ + LD="$(TARGET_CC)" \ + AR="" \ + CFLAGS="$(FPIC) $(TARGET_CFLAGS) $(EXTRA_CFLAGS) $(TARGET_CPPFLAGS) $(EXTRA_CPPFLAGS)" \ + CXXFLAGS="$(FPIC) $(TARGET_CFLAGS) $(EXTRA_CFLAGS) $(TARGET_CPPFLAGS) $(EXTRA_CPPFLAGS)" \ + LDFLAGS="$(TARGET_LDFLAGS) $(EXTRA_LDFLAGS) -lc $(LIBGCC_S) -lm"\ + ,res/pjproject) + $(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) -DLOW_MEMORY" + 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="yes" \ + 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,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,+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-iax2,IAX2 channel,IAX support,,/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,,/etc/asterisk/mgcp.conf,mgcp.conf,chan_mgcp,)) +$(eval $(call BuildAsteriskModule,chan-mobile,Mobile channel,the channel chan_mobile,+bluez-libs,/etc/asterisk/chan_mobile.conf,chan_mobile.conf,chan_mobile,)) +$(eval $(call BuildAsteriskModule,chan-skinny,Skinny channel,the channel chan_skinny,,/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,+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-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,,/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-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-res-fax +libspandsp +libtiff,,,res_fax_spandsp,)) +$(eval $(call BuildAsteriskModule,res-musiconhold,MOH,Music On Hold support,,/etc/asterisk/musiconhold.conf,musiconhold.conf,res_musiconhold,)) +$(eval $(call BuildAsteriskModule,res-srtp,SRTP,Secure RTP,+libsrtp,,,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,,,,,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: net/asterisk-11.x/files/asterisk.init =================================================================== --- net/asterisk-11.x/files/asterisk.init (revision 0) +++ net/asterisk-11.x/files/asterisk.init (revision 0) @@ -0,0 +1,26 @@ +#!/bin/sh /etc/rc.common +# Copyright (C) 2013 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 + [ -d $DEST/var/lib/asterisk/keys ] || mkdir -p $DEST/var/lib/asterisk/keys + + 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: net/asterisk-11.x/files/asterisk.default =================================================================== --- net/asterisk-11.x/files/asterisk.default (revision 0) +++ net/asterisk-11.x/files/asterisk.default (revision 0) @@ -0,0 +1,4 @@ +## startup options for /etc/init.d/asterisk + +ENABLE_ASTERISK="yes" +OPTIONS="" Index: net/asterisk-11.x/patches/200-addons-defaultenable.patch =================================================================== --- net/asterisk-11.x/patches/200-addons-defaultenable.patch (revision 0) +++ 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: net/asterisk-11.x/patches/100-build_tools-iconv.patch =================================================================== --- net/asterisk-11.x/patches/100-build_tools-iconv.patch (revision 0) +++ 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: net/asterisk-11.x/patches/500-nres.patch =================================================================== --- net/asterisk-11.x/patches/500-nres.patch (revision 0) +++ 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: net/asterisk-11.x/patches/50-pjlib-configure-compile-moved-to-makefile.patch =================================================================== --- net/asterisk-11.x/patches/50-pjlib-configure-compile-moved-to-makefile.patch (revision 0) +++ net/asterisk-11.x/patches/50-pjlib-configure-compile-moved-to-makefile.patch (revision 0) @@ -0,0 +1,22 @@ +--- a/res/Makefile ++++ b/res/Makefile +@@ -70,14 +70,14 @@ + $(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 ++# $(MAKE) -j1 -C pjproject dep ++# $(MAKE) -j1 -C pjproject + + include pjproject/build.mak + Index: net/asterisk-11.x/patches/600-cross-compile-check-pjproject.patch =================================================================== --- net/asterisk-11.x/patches/600-cross-compile-check-pjproject.patch (revision 0) +++ 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 _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel