asterisk-16.x: disable semaphores only on uClibc
[feed/telephony.git] / net / asterisk-16.x / Makefile
1 #
2 # Copyright (C) 2017 - 2018 Jiri Slachta <jiri@slachta.eu>
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9
10 AST_MAJOR_VERSION:=16
11 PKG_NAME:=asterisk$(AST_MAJOR_VERSION)
12 PKG_VERSION:=$(AST_MAJOR_VERSION).3.0
13 PKG_RELEASE:=2
14
15 PKG_SOURCE:=asterisk-$(PKG_VERSION).tar.gz
16 PKG_SOURCE_URL:=https://downloads.asterisk.org/pub/telephony/asterisk/releases
17 PKG_HASH:=8b22ee7c0c0b5557eff273118703c6fce8b743c12bbeb679ed86b3f197444a8e
18
19 PKG_BUILD_DIR:=$(BUILD_DIR)/asterisk-$(PKG_VERSION)
20 PKG_BUILD_DEPENDS:=libxml2/host
21
22 PKG_LICENSE:=GPL-2.0
23 PKG_LICENSE_FILES:=COPYING LICENSE
24 PKG_MAINTAINER:=Jiri Slachta <jiri@slachta.eu>
25
26 MENUSELECT_CATEGORIES:= \
27 MENUSELECT_ADDONS \
28 MENUSELECT_APPS \
29 MENUSELECT_BRIDGES \
30 MENUSELECT_CDR \
31 MENUSELECT_CEL \
32 MENUSELECT_CHANNELS \
33 MENUSELECT_CODECS \
34 MENUSELECT_FORMATS \
35 MENUSELECT_FUNCS \
36 MENUSELECT_PBX \
37 MENUSELECT_RES \
38 MENUSELECT_UTILS \
39 MENUSELECT_AGIS
40
41 MODULES_AVAILABLE:= \
42 app-adsiprog \
43 app-agent-pool \
44 app-alarmreceiver \
45 app-amd \
46 app-authenticate \
47 app-bridgeaddchan \
48 app-bridgewait \
49 app-celgenuserevent \
50 app-chanisavail \
51 app-channelredirect \
52 app-chanspy \
53 app-confbridge \
54 app-controlplayback \
55 app-dahdiras \
56 app-dictate \
57 app-directed-pickup \
58 app-directory \
59 app-disa \
60 app-dumpchan \
61 app-exec \
62 app-externalivr \
63 app-festival \
64 app-flash \
65 app-followme \
66 app-getcpeid \
67 app-ices \
68 app-image \
69 app-ivrdemo \
70 app-milliwatt \
71 app-minivm \
72 app-mixmonitor \
73 app-morsecode \
74 app-mp3 \
75 app-originate \
76 app-page \
77 app-playtones \
78 app-privacy \
79 app-queue \
80 app-read \
81 app-readexten \
82 app-record \
83 app-saycounted \
84 app-sayunixtime \
85 app-senddtmf \
86 app-sendtext \
87 app-skel \
88 app-sms \
89 app-softhangup \
90 app-speech \
91 app-stack \
92 app-stasis \
93 app-statsd \
94 app-stream-echo \
95 app-system \
96 app-talkdetect \
97 app-test \
98 app-transfer \
99 app-url \
100 app-userevent \
101 app-verbose \
102 app-waitforring \
103 app-waitforsilence \
104 app-waituntil \
105 app-while \
106 app-zapateller \
107 bridge-builtin-features \
108 bridge-builtin-interval-features \
109 bridge-holding \
110 bridge-native-rtp \
111 bridge-simple \
112 bridge-softmix \
113 cdr \
114 cdr-csv \
115 cdr-sqlite3 \
116 cel-custom \
117 cel-manager \
118 cel-sqlite3-custom \
119 chan-alsa \
120 chan-bridge-media \
121 chan-console \
122 chan-dahdi \
123 chan-iax2 \
124 chan-mgcp \
125 chan-mobile \
126 chan-motif \
127 chan-ooh323 \
128 chan-oss \
129 chan-phone \
130 chan-rtp \
131 chan-sip \
132 chan-skinny \
133 chan-unistim \
134 codec-a-mu \
135 codec-adpcm \
136 codec-alaw \
137 codec-dahdi \
138 codec-g722 \
139 codec-g726 \
140 codec-gsm \
141 codec-ilbc \
142 codec-lpc10 \
143 codec-resample \
144 codec-speex \
145 codec-ulaw \
146 curl \
147 format-g719 \
148 format-g723 \
149 format-g726 \
150 format-g729 \
151 format-gsm \
152 format-h263 \
153 format-h264 \
154 format-ilbc \
155 format-mp3 \
156 format-ogg-speex \
157 format-ogg-vorbis \
158 format-pcm \
159 format-siren14 \
160 format-siren7 \
161 format-sln \
162 format-vox \
163 format-wav \
164 format-wav-gsm \
165 func-aes \
166 func-base64 \
167 func-blacklist \
168 func-callcompletion \
169 func-channel \
170 func-config \
171 func-cut \
172 func-db \
173 func-devstate \
174 func-dialgroup \
175 func-dialplan \
176 func-enum \
177 func-env \
178 func-extstate \
179 func-frame-trace \
180 func-global \
181 func-groupcount \
182 func-hangupcause \
183 func-holdintercept \
184 func-iconv \
185 func-jitterbuffer \
186 func-lock \
187 func-math \
188 func-md5 \
189 func-module \
190 func-periodic-hook \
191 func-pitchshift \
192 func-presencestate \
193 func-rand \
194 func-realtime \
195 func-sha1 \
196 func-shell \
197 func-sorcery \
198 func-speex \
199 func-sprintf \
200 func-srv \
201 func-sysinfo \
202 func-talkdetect \
203 func-uri \
204 func-version \
205 func-vmcount \
206 func-volume \
207 odbc \
208 pbx-ael \
209 pbx-dundi \
210 pbx-loopback \
211 pbx-lua \
212 pbx-realtime \
213 pbx-spool \
214 pgsql \
215 pjsip \
216 res-adsi \
217 res-ael-share \
218 res-agi \
219 res-ari \
220 res-ari-applications \
221 res-ari-asterisk \
222 res-ari-bridges \
223 res-ari-channels \
224 res-ari-device-states \
225 res-ari-endpoints \
226 res-ari-events \
227 res-ari-mailboxes \
228 res-ari-model \
229 res-ari-playbacks \
230 res-ari-recordings \
231 res-ari-sounds \
232 res-calendar \
233 res-calendar-caldav \
234 res-calendar-ews \
235 res-calendar-exchange \
236 res-calendar-icalendar \
237 res-chan-stats \
238 res-clialiases \
239 res-clioriginate \
240 res-config-ldap \
241 res-config-mysql \
242 res-config-sqlite3 \
243 res-convert \
244 res-endpoint-stats \
245 res-hep \
246 res-hep-pjsip \
247 res-hep-rtcp \
248 res-fax-spandsp \
249 res-fax \
250 res-format-attr-celt \
251 res-format-attr-g729 \
252 res-format-attr-h263 \
253 res-format-attr-h264 \
254 res-format-attr-ilbc \
255 res-format-attr-opus \
256 res-format-attr-silk \
257 res-format-attr-siren14 \
258 res-format-attr-siren7 \
259 res-format-attr-vp8 \
260 res-http-media-cache \
261 res-http-websocket \
262 res-limit \
263 res-manager-devicestate \
264 res-manager-presencestate \
265 res-monitor \
266 res-musiconhold \
267 res-mutestream \
268 res-mwi-devstate \
269 res-mwi-external \
270 res-mwi-external-ami \
271 res-parking \
272 res-phoneprov \
273 res-pjsip-phoneprov \
274 res-pjproject \
275 res-pktccops \
276 res-realtime \
277 res-remb-modifier \
278 res-resolver-unbound \
279 res-rtp-asterisk \
280 res-rtp-multicast \
281 res-security-log \
282 res-smdi \
283 res-snmp \
284 res-sorcery \
285 res-sorcery-memory-cache \
286 res-speech \
287 res-srtp \
288 res-stasis \
289 res-stasis-answer \
290 res-stasis-device-state \
291 res-stasis-mailbox \
292 res-stasis-playback \
293 res-stasis-recording \
294 res-stasis-snoop \
295 res-statsd \
296 res-stun-monitor \
297 res-timing-dahdi \
298 res-timing-pthread \
299 res-timing-timerfd \
300 res-xmpp \
301 voicemail
302
303 UTILS_AVAILABLE:= \
304 aelparse \
305 astcanary \
306 astdb2sqlite3 \
307 astdb2bdb \
308 check_expr \
309 check_expr2 \
310 conf2ael \
311 muted \
312 smsq \
313 stereorize \
314 streamplayer
315
316 AST_ENABLE:=
317
318 PKG_CONFIG_DEPENDS:= \
319 $(patsubst %,CONFIG_PACKAGE_$(PKG_NAME)-%,$(MODULES_AVAILABLE)) \
320 $(patsubst %,CONFIG_PACKAGE_$(PKG_NAME)-util-%,$(subst _,-,$(UTILS_AVAILABLE))) \
321 CONFIG_ASTERISK$(AST_MAJOR_VERSION)_LOW_MEMORY
322
323 include $(INCLUDE_DIR)/uclibc++.mk
324 include $(INCLUDE_DIR)/package.mk
325 include $(INCLUDE_DIR)/host-build.mk
326 # Needed for res-config-mysql and func-iconv to find iconv
327 include $(INCLUDE_DIR)/nls.mk
328
329 define Package/$(PKG_NAME)/install/module
330 $(INSTALL_DIR) $(1)/usr/lib/asterisk/modules
331 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/asterisk/modules/*$(2).so* $(1)/usr/lib/asterisk/modules/
332 endef
333
334 define Package/$(PKG_NAME)/install/conffile
335 $(INSTALL_DIR) $(1)/etc/asterisk
336 $(CP) $(PKG_INSTALL_DIR)/etc/asterisk/$(2) $(1)/etc/asterisk/
337 endef
338
339 define Package/$(PKG_NAME)/install/lib
340 $(INSTALL_DIR) $(1)/usr/lib
341 $(CP) $(PKG_INSTALL_DIR)/usr/lib/$(2).so* $(1)/usr/lib/
342 endef
343
344 define Package/$(PKG_NAME)/install/sbin
345 $(INSTALL_DIR) $(1)/usr/sbin
346 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/$(2) $(1)/usr/sbin/
347 endef
348
349 define Package/$(PKG_NAME)/install/sounds
350 $(INSTALL_DIR) $(1)/usr/share/asterisk/sounds/
351 $(CP) $(PKG_INSTALL_DIR)/usr/share/asterisk/sounds/en/$(2) $(1)/usr/share/asterisk/sounds/
352 endef
353
354 define Package/$(PKG_NAME)/install/util-conffile
355 $(INSTALL_DIR) $(1)/etc
356 $(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/asterisk/$(2) $(1)/etc
357 endef
358
359 define Package/$(PKG_NAME)/config
360 menu "Advanced configuration"
361 depends on PACKAGE_asterisk$(AST_MAJOR_VERSION)
362
363 config ASTERISK$(AST_MAJOR_VERSION)_LOW_MEMORY
364 bool "Optimize Asterisk $(AST_MAJOR_VERSION) for low memory usage"
365 default n
366 help
367 Warning: this feature is known to cause problems with some modules.
368 Disable it if you experience problems like segmentation faults.
369
370 endmenu
371 endef
372
373 define BuildAsteriskModule
374 define Package/$(PKG_NAME)-$(1)
375 $$(call Package/$(PKG_NAME)/Default)
376 TITLE:=$(2) support
377 DEPENDS:= $(PKG_NAME) $(patsubst +%,+PACKAGE_$(PKG_NAME)-$(1):%,$(4)) $(9)
378 ifneq ($$(CONFIG_PACKAGE_$(PKG_NAME)-$(1)),)
379 AST_ENABLE+=$(6)
380 endif
381 endef
382
383 define Package/$(PKG_NAME)-$(1)/conffiles
384 $(subst $(space),$(newline),$(foreach c,$(5),/etc/asterisk/$(c)))
385 endef
386
387 define Package/$(PKG_NAME)-$(1)/description
388 This package provides support for '$(3)' in Asterisk.
389 endef
390
391 define Package/$(PKG_NAME)-$(1)/install
392 $(foreach c,$(5),$(call Package/$(PKG_NAME)/install/conffile,$$(1),$(c));)
393 $(foreach m,$(6),$(call Package/$(PKG_NAME)/install/module,$$(1),$(m));)
394 $(foreach s,$(7),$(call Package/$(PKG_NAME)/install/sounds,$$(1),$(s));)
395 $(foreach b,$(8),$(call Package/$(PKG_NAME)/install/sbin,$$(1),$(b));)
396 endef
397
398 $$(eval $$(call BuildPackage,$(PKG_NAME)-$(1)))
399 endef
400
401 define BuildAsteriskUtil
402 define Package/$(PKG_NAME)-util-$(subst _,-,$(1))
403 $$(call Package/$(PKG_NAME)/Default)
404 TITLE:=$(1) utility
405 DEPENDS:=$(PKG_NAME) $(patsubst +%,+PACKAGE_$(PKG_NAME)-util-$(subst _,-,$(1)):%,$(3))
406 ifneq ($$(CONFIG_PACKAGE_$(PKG_NAME)-util-$(subst _,-,$(1))),)
407 AST_ENABLE+=$(1)
408 endif
409 endef
410
411 define Package/$(PKG_NAME)-util-$(subst _,-,$(1))/conffiles
412 $(subst $(space),$(newline),$(foreach c,$(4),/etc/$(c)))
413 endef
414
415 define Package/$(PKG_NAME)-util-$(subst _,-,$(1))/description
416 $(2)
417 endef
418
419 define Package/$(PKG_NAME)-util-$(subst _,-,$(1))/install
420 $(call Package/$(PKG_NAME)/install/sbin,$$(1),$(1))
421 $(foreach c,$(4),$(call Package/$(PKG_NAME)/install/util-conffile,$$(1),$(c));)
422 endef
423
424 $$(eval $$(call BuildPackage,$(PKG_NAME)-util-$(subst _,-,$(1))))
425 endef
426
427 define Package/$(PKG_NAME)/Default
428 SUBMENU:=Telephony
429 SECTION:=net
430 CATEGORY:=Network
431 URL:=http://www.asterisk.org/
432 endef
433
434 define Package/$(PKG_NAME)/Default/description
435 Asterisk is a complete PBX in software. It provides all of the features
436 you would expect from a PBX and more. Asterisk does voice over IP in three
437 protocols, and can interoperate with almost all standards-based telephony
438 equipment using relatively inexpensive hardware.
439 endef
440
441 define Package/$(PKG_NAME)
442 $(call Package/$(PKG_NAME)/Default)
443 TITLE:=Complete open source PBX, v$(PKG_VERSION)
444 MENU:=1
445 DEPENDS:=$(CXX_DEPENDS) +jansson +libcap +libedit +libopenssl +libsqlite3 +libuuid +libxml2 +zlib
446 endef
447
448 define Package/$(PKG_NAME)/description
449 $(call Package/$(PKG_NAME)/Default/description)
450 endef
451
452 define Package/$(PKG_NAME)/conffiles
453 /etc/asterisk/asterisk.conf
454 /etc/asterisk/acl.conf
455 /etc/asterisk/cel.conf
456 /etc/asterisk/ccss.conf
457 /etc/asterisk/cli.conf
458 /etc/asterisk/cli_permissions.conf
459 /etc/asterisk/codecs.conf
460 /etc/asterisk/dnsmgr.conf
461 /etc/asterisk/dsp.conf
462 /etc/asterisk/extconfig.conf
463 /etc/asterisk/extensions.conf
464 /etc/asterisk/features.conf
465 /etc/asterisk/http.conf
466 /etc/asterisk/indications.conf
467 /etc/asterisk/logger.conf
468 /etc/asterisk/manager.conf
469 /etc/asterisk/modules.conf
470 /etc/asterisk/res_config_sqlite3.conf
471 /etc/asterisk/stasis.conf
472 /etc/asterisk/udptl.conf
473 /etc/asterisk/users.conf
474 /etc/default/asterisk
475 /etc/init.d/asterisk
476 endef
477
478 AST_CFG_FILES:= \
479 asterisk.conf acl.conf cel.conf ccss.conf cli.conf \
480 cli_permissions.conf codecs.conf dnsmgr.conf dsp.conf extconfig.conf \
481 extensions.conf features.conf http.conf indications.conf \
482 logger.conf manager.conf modules.conf stasis.conf udptl.conf \
483 users.conf res_config_sqlite3.conf
484
485 AST_EMB_MODULES:=\
486 app_dial app_echo app_macro app_playback \
487 func_callerid func_logic func_strings func_timeout \
488 pbx_config res_crypto
489
490 define Package/$(PKG_NAME)/install
491 $(call Package/$(PKG_NAME)/install/lib,$(1),libasteriskssl)
492 $(call Package/$(PKG_NAME)/install/sbin,$(1),asterisk)
493 $(call Package/$(PKG_NAME)/install/sbin,$(1),safe_asterisk)
494 $(call Package/$(PKG_NAME)/install/sbin,$(1),astgenkey)
495 $(foreach m,$(AST_CFG_FILES),$(call Package/$(PKG_NAME)/install/conffile,$(1),$(m));)
496 $(foreach m,$(AST_EMB_MODULES),$(call Package/$(PKG_NAME)/install/module,$(1),$(m));)
497 $(INSTALL_DIR) $(1)/usr/share/asterisk/sounds/
498 $(INSTALL_DIR) $(1)/etc/default
499 $(INSTALL_DATA) ./files/asterisk.default $(1)/etc/default/asterisk
500 $(INSTALL_DIR) $(1)/etc/init.d
501 $(INSTALL_BIN) ./files/asterisk.init $(1)/etc/init.d/asterisk
502 endef
503
504 define Package/$(PKG_NAME)-sounds
505 $(call Package/$(PKG_NAME)/Default)
506 TITLE:=Sounds support
507 DEPENDS:=$(PKG_NAME)
508 endef
509
510 define Package/$(PKG_NAME)-sounds/description
511 This package provides the sound-files for Asterisk $(AST_MAJOR_VERSION).
512 endef
513
514 define Package/$(PKG_NAME)-sounds/install
515 $(INSTALL_DIR) $(1)/usr/share/asterisk/sounds/
516 $(CP) $(PKG_INSTALL_DIR)/usr/share/asterisk/sounds/en/* $(1)/usr/share/asterisk/sounds/
517 rm -f $(1)/usr/share/asterisk/sounds/vm-*
518 endef
519
520 ifeq ($(call qstrip,$(CONFIG_LIBC)),musl)
521 CONFIGURE_ARGS+= \
522 --enable-permanent-dlopen
523 endif
524
525 ifneq ($(CONFIG_PACKAGE_$(PKG_NAME)-chan-dahdi),)
526 CONFIGURE_ARGS+= \
527 --with-dahdi="$(STAGING_DIR)/usr" \
528 --with-pri="$(STAGING_DIR)/usr" \
529 --with-tonezone="$(STAGING_DIR)/usr"
530 else
531 CONFIGURE_ARGS+= \
532 --without-dahdi \
533 --without-pri \
534 --without-tonezone
535 endif
536
537 # Pass CPPFLAGS in the CFLAGS as otherwise the build system will
538 # ignore them.
539 TARGET_CFLAGS+=$(TARGET_CPPFLAGS)
540
541 CONFIGURE_ARGS+= \
542 --disable-xmldoc \
543 $(if $(CONFIG_PACKAGE_$(PKG_NAME)-chan-alsa),--with-asound="$(STAGING_DIR)/usr",--without-asound) \
544 --without-execinfo \
545 $(if $(CONFIG_PACKAGE_$(PKG_NAME)-chan-mobile),--with-bluetooth="$(STAGING_DIR)/usr",--without-bluetooth) \
546 --with-cap="$(STAGING_DIR)/usr" \
547 $(if $(CONFIG_PACKAGE_$(PKG_NAME)-curl),--with-libcurl="$(STAGING_DIR)/usr") \
548 --with-gsm=internal \
549 --without-gtk2 \
550 --with-ilbc=internal \
551 --without-isdnnet \
552 --without-misdn \
553 --without-nbs \
554 --without-pjproject-bundled \
555 --with-libedit="$(STAGING_DIR)/usr" \
556 --with-libxml2 \
557 $(if $(CONFIG_PACKAGE_$(PKG_NAME)-res-snmp),--with-netsnmp="$(STAGING_DIR)/usr",--without-netsnmp) \
558 --without-newt \
559 --without-osptk \
560 $(if $(CONFIG_PACKAGE_$(PKG_NAME)-pbx-lua),--with-lua="$(STAGING_DIR)/usr",--without-lua) \
561 $(if $(CONFIG_PACKAGE_$(PKG_NAME)-pgsql),--with-postgres="$(STAGING_DIR)/usr",--without-postgres) \
562 $(if $(CONFIG_PACKAGE_$(PKG_NAME)-util-smsq),--with-popt="$(STAGING_DIR)/usr",--without-popt) \
563 $(if $(CONFIG_PACKAGE_$(PKG_NAME)-chan-console),--with-portaudio="$(STAGING_DIR)/usr",--without-portaudio) \
564 --without-radius \
565 $(if $(CONFIG_PACKAGE_$(PKG_NAME)-res-fax-spandsp),--with-spandsp="$(STAGING_DIR)/usr",--without-spandsp) \
566 --without-sdl \
567 --without-sqlite \
568 --with-sqlite3="$(STAGING_DIR)/usr" \
569 --without-suppserv \
570 --without-tds \
571 $(if $(CONFIG_PACKAGE_$(PKG_NAME)-res-resolver-unbound),--with-unbound="$(STAGING_DIR)/usr",--without-unbound) \
572 $(if $(CONFIG_PACKAGE_$(PKG_NAME)-format-ogg-vorbis),--with-vorbis="$(STAGING_DIR)/usr",--without-vorbis) \
573 --without-vpb \
574 --with-z="$(STAGING_DIR)/usr"
575
576 ifeq ($(CONFIG_PACKAGE_$(PKG_NAME)-codec-speex)$(CONFIG_PACKAGE_$(PKG_NAME)-format-ogg-speex)$(CONFIG_PACKAGE_$(PKG_NAME)-func-speex),)
577 CONFIGURE_ARGS+= \
578 --without-speex
579 else
580 CONFIGURE_ARGS+= \
581 --with-speex="$(STAGING_DIR)/usr"
582 endif
583
584 ifeq ($(CONFIG_PACKAGE_$(PKG_NAME)-codec-speex)$(CONFIG_PACKAGE_$(PKG_NAME)-func-speex),)
585 CONFIGURE_ARGS+= \
586 --without-speexdsp
587 else
588 CONFIGURE_ARGS+= \
589 --with-speexdsp="$(STAGING_DIR)/usr"
590 endif
591
592 ifeq ($(CONFIG_PACKAGE_$(PKG_NAME)-format-ogg-speex)$(CONFIG_PACKAGE_$(PKG_NAME)-format-ogg-vorbis),)
593 CONFIGURE_ARGS+= \
594 --without-ogg
595 else
596 CONFIGURE_ARGS+= \
597 --with-ogg="$(STAGING_DIR)/usr"
598 endif
599
600 ifeq ($(CONFIG_PACKAGE_$(PKG_NAME)-res-pjproject)$(CONFIG_PACKAGE_$(PKG_NAME)-res-srtp),)
601 CONFIGURE_ARGS+= \
602 --without-srtp
603 else
604 CONFIGURE_ARGS+= \
605 --with-srtp="$(STAGING_DIR)/usr"
606 endif
607
608 ifeq ($(CONFIG_PACKAGE_$(PKG_NAME)-pjsip)$(CONFIG_PACKAGE_$(PKG_NAME)-res-pjproject)$(CONFIG_PACKAGE_$(PKG_NAME)-res-rtp-asterisk),)
609 CONFIGURE_ARGS+= \
610 --without-pjproject
611 else
612 CONFIGURE_ARGS+= \
613 --with-pjproject="$(STAGING_DIR)/usr"
614 endif
615
616 # res-calendar-ews requires both neon and neon29 detection
617 ifeq ($(CONFIG_PACKAGE_$(PKG_NAME)-res-calendar-caldav)$(CONFIG_PACKAGE_$(PKG_NAME)-res-calendar-ews)$(CONFIG_PACKAGE_$(PKG_NAME)-res-calendar-exchange)$(CONFIG_PACKAGE_$(PKG_NAME)-res-calendar-icalendar),)
618 CONFIGURE_ARGS+= \
619 --without-neon
620 endif
621
622 ifeq ($(CONFIG_PACKAGE_$(PKG_NAME)-res-calendar-caldav)$(CONFIG_PACKAGE_$(PKG_NAME)-res-calendar-exchange)$(CONFIG_PACKAGE_$(PKG_NAME)-res-calendar-icalendar),)
623 CONFIGURE_ARGS+= \
624 --without-ical
625 else
626 CONFIGURE_ARGS+= \
627 --with-ical="$(STAGING_DIR)/usr"
628 endif
629
630 ifeq ($(CONFIG_PACKAGE_$(PKG_NAME)-res-calendar-ews),)
631 CONFIGURE_ARGS+= \
632 --without-neon29
633 endif
634
635 ifeq ($(CONFIG_PACKAGE_$(PKG_NAME)-res-calendar-exchange)$(CONFIG_PACKAGE_$(PKG_NAME)-res-xmpp),)
636 CONFIGURE_ARGS+= \
637 --without-iksemel
638 else
639 CONFIGURE_ARGS+= \
640 --with-iksemel="$(STAGING_DIR)/usr"
641 endif
642
643 CONFIGURE_VARS += \
644 ac_cv_path_ac_pt_CONFIG_LIBXML2=$(STAGING_DIR)/host/bin/xml2-config
645
646 ifneq ($(CONFIG_PACKAGE_$(PKG_NAME)-res-calendar-caldav)$(CONFIG_PACKAGE_$(PKG_NAME)-res-calendar-ews)$(CONFIG_PACKAGE_$(PKG_NAME)-res-calendar-exchange)$(CONFIG_PACKAGE_$(PKG_NAME)-res-calendar-icalendar),)
647 CONFIGURE_VARS += \
648 ac_cv_path_CONFIG_NEON=$(STAGING_DIR)/usr/bin/neon-config
649 endif
650
651 ifneq ($(CONFIG_PACKAGE_$(PKG_NAME)-res-calendar-ews),)
652 CONFIGURE_VARS += \
653 ac_cv_path_CONFIG_NEON29=$(STAGING_DIR)/usr/bin/neon-config
654 endif
655
656 MAKE_FLAGS+= \
657 ASTDATADIR="/usr/share/asterisk" \
658 DESTDIR="$(PKG_INSTALL_DIR)"
659
660 # show full gcc arguments instead of [CC] and [LD]
661 MAKE_FLAGS+= \
662 NOISY_BUILD="yes"
663
664 # don't let asterisk mess with build flags
665 MAKE_FLAGS+= \
666 AST_FORTIFY_SOURCE="" \
667 DEBUG="" \
668 OPTIMIZE=""
669
670 AST_MENUSELECT_OPTS = \
671 --without-newt \
672 --without-curses \
673 --with-libxml2="$(STAGING_DIR_HOSTPKG)/usr"
674
675 define Build/menuselect
676 CC="$(HOSTCC)" \
677 CFLAGS="$(HOST_CFLAGS) -I$(STAGING_DIR_HOSTPKG)/include/libxml2" \
678 LDFLAGS="$(HOST_LDFLAGS) -Wl,-rpath,$(STAGING_DIR_HOSTPKG)/lib" \
679 $(MAKE) -C "$(PKG_BUILD_DIR)/menuselect"
680 endef
681
682 define Build/Configure
683 cd $(PKG_BUILD_DIR); \
684 ./bootstrap.sh
685 $(call Build/Configure/Default)
686 cd $(PKG_BUILD_DIR)/menuselect; \
687 CC="$(HOSTCC)" \
688 CFLAGS="$(HOST_CFLAGS) -I$(STAGING_DIR_HOSTPKG)/include/libxml2" \
689 CONFIG_SITE= \
690 LDFLAGS="$(HOST_LDFLAGS) -Wl,-rpath,$(STAGING_DIR_HOSTPKG)/lib" \
691 ac_cv_path_ac_pt_CONFIG_LIBXML2=$(STAGING_DIR_HOSTPKG)/bin/xml2-config \
692 ./configure \
693 $(HOST_CONFIGURE_ARGS) \
694 $(AST_MENUSELECT_OPTS)
695 endef
696
697 define Build/Compile
698 $(call Build/menuselect)
699 $(call Build/Compile/Default,menuselect-tree)
700
701 cd "$(PKG_BUILD_DIR)" && MENUSELECT_ARGS= && \
702 for cat in $(MENUSELECT_CATEGORIES); do \
703 MENUSELECT_ARGS="$$$$MENUSELECT_ARGS --disable-category $$$$cat"; \
704 done; \
705 ./menuselect/menuselect \
706 $$$$MENUSELECT_ARGS \
707 menuselect.makeopts
708 cd "$(PKG_BUILD_DIR)" && MENUSELECT_ARGS= && \
709 for item in $(AST_EMB_MODULES) $$(AST_ENABLE); do \
710 MENUSELECT_ARGS="$$$$MENUSELECT_ARGS --enable $$$$item"; \
711 done; \
712 ./menuselect/menuselect \
713 $$$$MENUSELECT_ARGS \
714 menuselect.makeopts
715 cd "$(PKG_BUILD_DIR)" && \
716 ./menuselect/menuselect \
717 --disable BUILD_NATIVE \
718 $(if $(CONFIG_ASTERISK$(AST_MAJOR_VERSION)_LOW_MEMORY),--enable LOW_MEMORY) \
719 menuselect.makeopts
720
721 # When changing anything in MENUSELECT_CFLAGS the file ".lastclean"
722 # gets deleted. E.g. when compiling on x86 for x86 "--disable
723 # BUILD_NATIVE" changes MENUSELECT_CFLAGS and the file gets removed.
724 # But that will result in a rebuild attempt of menuselect which will
725 # likely fail. Prevent that by recreating ".lastclean" and menuselect.
726 $(call Build/Compile/Default,.lastclean)
727 $(call Build/menuselect)
728
729 $(call Build/Compile/Default,all install samples)
730 endef
731
732 define Build/InstallDev
733 $(INSTALL_DIR) $(1)/usr/include/asterisk-$(AST_MAJOR_VERSION)/include/asterisk/
734 $(CP) $(PKG_INSTALL_DIR)/usr/include/asterisk/*.h $(1)/usr/include/asterisk-$(AST_MAJOR_VERSION)/include/asterisk/
735 $(CP) $(PKG_INSTALL_DIR)/usr/include/asterisk.h $(1)/usr/include/asterisk-$(AST_MAJOR_VERSION)/include/
736 endef
737
738 $(eval $(call BuildPackage,$(PKG_NAME)))
739 $(eval $(call BuildPackage,$(PKG_NAME)-sounds))
740
741 #######################################
742 # AST modules
743 # Params:
744 # 1 - Package subname
745 # 2 - Package title
746 # 3 - Module description
747 # 4 - Module dependencies
748 # 5 - conf files
749 # 6 - module files
750 # 7 - sound files
751 # 8 - binary files
752 # 9 - complex depends (passed on as is)
753 #######################################
754 #$(eval $(call BuildAsteriskModule,subname,title,module description,module dependencies,conf files,module files,sound files,binary files,complex depends))
755
756 $(eval $(call BuildAsteriskModule,app-adsiprog,ADSI programming,program Asterisk ADSI scripts into phone,+$(PKG_NAME)-res-adsi,adsi.conf asterisk.adsi telcordia-1.adsi,app_adsiprog,,))
757 $(eval $(call BuildAsteriskModule,app-agent-pool,Call center agent pool,call center agent pool,,agents.conf,app_agent_pool,,))
758 $(eval $(call BuildAsteriskModule,app-alarmreceiver,Alarm receiver,Central Station Alarm receiver for Ademco Contact ID,,,app_alarmreceiver,,))
759 $(eval $(call BuildAsteriskModule,app-amd,Answering machine detection,answering machine detection,,amd.conf,app_amd,,))
760 $(eval $(call BuildAsteriskModule,app-authenticate,Authenticate commands,Execute arbitrary authenticate commands,,,app_authenticate,,))
761 $(eval $(call BuildAsteriskModule,app-bridgeaddchan,Bridge add channel,place a channel into an existing bridge,,,app_bridgeaddchan,,))
762 $(eval $(call BuildAsteriskModule,app-bridgewait,Holding bridge,place a channel into a holding bridge,+$(PKG_NAME)-bridge-holding,,app_bridgewait,,))
763 $(eval $(call BuildAsteriskModule,app-celgenuserevent,User-defined CEL event,generate user-defined CEL event,,,app_celgenuserevent,,))
764 $(eval $(call BuildAsteriskModule,app-chanisavail,Channel availability check,support for checking if a channel is available,,,app_chanisavail,,))
765 $(eval $(call BuildAsteriskModule,app-channelredirect,Redirect a channel,ChannelRedirect application,,,app_channelredirect,,))
766 $(eval $(call BuildAsteriskModule,app-chanspy,Channel listen in,support for listening in on any channel,,,app_chanspy,,))
767 $(eval $(call BuildAsteriskModule,app-confbridge,ConfBridge,Software bridge for multi-party audio conferencing,+$(PKG_NAME)-bridge-builtin-features +$(PKG_NAME)-bridge-simple +$(PKG_NAME)-bridge-softmix,confbridge.conf,app_confbridge,,))
768 $(eval $(call BuildAsteriskModule,app-controlplayback,Control playback,trivial application to control playback of a sound file,,,app_controlplayback,,))
769 $(eval $(call BuildAsteriskModule,app-dahdiras,Execute an ISDN RAS,support for executing an ISDN RAS using DAHDI,+$(PKG_NAME)-chan-dahdi,,app_dahdiras,,))
770 $(eval $(call BuildAsteriskModule,app-dictate,Virtual dictation machine,virtual dictation machine application,,,app_dictate,,))
771 $(eval $(call BuildAsteriskModule,app-directed-pickup,Directed call pickup,support for directed call pickup,,,app_directed_pickup,,))
772 $(eval $(call BuildAsteriskModule,app-directory,Extension directory,provide a directory of extensions,,,app_directory,,))
773 $(eval $(call BuildAsteriskModule,app-disa,Direct Inward System Access,Direct Inward System Access,,,app_disa,,))
774 $(eval $(call BuildAsteriskModule,app-dumpchan,Dump info about channel,application to dump channel variables,,,app_dumpchan,,))
775 $(eval $(call BuildAsteriskModule,app-exec,Exec application,support for application execution,,,app_exec,,))
776 $(eval $(call BuildAsteriskModule,app-externalivr,External IVR interface,external IVR application interface,,,app_externalivr,,))
777 $(eval $(call BuildAsteriskModule,app-festival,Simple festival interface,connect to festival,,festival.conf,app_festival,,))
778 $(eval $(call BuildAsteriskModule,app-flash,Flash channel,flash a DAHDI trunk,+$(PKG_NAME)-chan-dahdi,,app_flash,,))
779 $(eval $(call BuildAsteriskModule,app-followme,Find-me/follow-me,find-me/follow-me application,,followme.conf,app_followme,,))
780 $(eval $(call BuildAsteriskModule,app-getcpeid,Get ADSI CPE ID,get ADSI CPE ID,,,app_getcpeid,,))
781 $(eval $(call BuildAsteriskModule,app-ices,Encode and stream,stream to an icecast server via ICES,,,app_ices,,))
782 $(eval $(call BuildAsteriskModule,app-image,Image transmission,transmit an image,,,app_image,,))
783 $(eval $(call BuildAsteriskModule,app-ivrdemo,IVR demo,IVR demo application,,,app_ivrdemo,,))
784 $(eval $(call BuildAsteriskModule,app-milliwatt,Digital milliwatt [mu-law] test app,digital milliwatt test,,,app_milliwatt,,))
785 $(eval $(call BuildAsteriskModule,app-minivm,Minimal voicemail system,a voicemail system in small building blocks working together based on the Comedian Mail voicemail,,extensions_minivm.conf minivm.conf,app_minivm,,))
786 $(eval $(call BuildAsteriskModule,app-mixmonitor,Record a call and mix the audio,record a call and mix the audio during the recording,,,app_mixmonitor,,))
787 $(eval $(call BuildAsteriskModule,app-morsecode,Morse code,Morsecode application,,,app_morsecode,,))
788 $(eval $(call BuildAsteriskModule,app-mp3,Silly MP3,silly application to play an MP3 file [uses mpg123],+mpg123,,app_mp3,,))
789 $(eval $(call BuildAsteriskModule,app-originate,Originate a call,originating an outbound call and connecting it to a specified extension or application,,,app_originate,,))
790 $(eval $(call BuildAsteriskModule,app-page,Page multiple phones,paging application,+$(PKG_NAME)-app-confbridge,,app_page,,))
791 $(eval $(call BuildAsteriskModule,app-playtones,Playtones application,play a tone list,,,app_playtones,,))
792 $(eval $(call BuildAsteriskModule,app-privacy,Require phone number,require phone number to be entered if no CallerID sent,,,app_privacy,,))
793 $(eval $(call BuildAsteriskModule,app-queue,True Call Queueing,support for ACD,,queues.conf queuerules.conf,app_queue,,))
794 $(eval $(call BuildAsteriskModule,app-read,Variable read,a trivial application to read a variable,,,app_read,,))
795 $(eval $(call BuildAsteriskModule,app-readexten,Extension to variable,a trivial application to read an extension into a variable,,,app_readexten,,))
796 $(eval $(call BuildAsteriskModule,app-record,Record sound file,to record a sound file,,,app_record,,))
797 $(eval $(call BuildAsteriskModule,app-saycounted,Decline words,applications to decline words according to current language,,,app_saycounted,,))
798 $(eval $(call BuildAsteriskModule,app-sayunixtime,Say Unix time,an application to say Unix time,,,app_sayunixtime,,))
799 $(eval $(call BuildAsteriskModule,app-senddtmf,Send DTMF digits,Sends arbitrary DTMF digits,,,app_senddtmf,,))
800 $(eval $(call BuildAsteriskModule,app-sendtext,Send text,transmit a text message,,,app_sendtext,,))
801 $(eval $(call BuildAsteriskModule,app-skel,Skeleton [sample],skeleton for development of an Asterisk application,,app_skel.conf,app_skel,,))
802 $(eval $(call BuildAsteriskModule,app-sms,SMS,SMS support (ETSI ES 201 912 protocol 1),,,app_sms,,))
803 $(eval $(call BuildAsteriskModule,app-softhangup,Hang up requested channel,SoftHangup application,,,app_softhangup,,))
804 $(eval $(call BuildAsteriskModule,app-speech,Dialplan Speech,Dialplan Speech Applications,+$(PKG_NAME)-res-speech,,app_speech_utils,,))
805 $(eval $(call BuildAsteriskModule,app-stack,Stack applications,Stack applications Gosub Return etc.,+$(PKG_NAME)-res-agi,,app_stack,,))
806 $(eval $(call BuildAsteriskModule,app-stasis,Stasis dialplan,Stasis dialplan application,+$(PKG_NAME)-res-stasis,,app_stasis,,))
807 $(eval $(call BuildAsteriskModule,app-statsd,statsd dialplan,statsd dialplan,+$(PKG_NAME)-res-statsd,,app_statsd,,))
808 $(eval $(call BuildAsteriskModule,app-stream-echo,Stream echo,stream echo,,,app_stream_echo,,))
809 $(eval $(call BuildAsteriskModule,app-system,System exec,support for executing system commands,,,app_system,,))
810 $(eval $(call BuildAsteriskModule,app-talkdetect,File playback with audio detect,for file playback with audio detect,,,app_talkdetect,,))
811 $(eval $(call BuildAsteriskModule,app-test,Interface test,applications to test connection and produce report in text file,,,app_test,,))
812 $(eval $(call BuildAsteriskModule,app-transfer,Transfers caller to other ext,transfer a caller,,,app_transfer,,))
813 $(eval $(call BuildAsteriskModule,app-url,Send URL,app to transmit a URL,,,app_url,,))
814 $(eval $(call BuildAsteriskModule,app-userevent,Custom user event,UserEvent application -- send manager event,,,app_userevent,,))
815 $(eval $(call BuildAsteriskModule,app-verbose,Verbose logging,Verbose logging application,,,app_verbose,,))
816 $(eval $(call BuildAsteriskModule,app-waitforring,Wait for first ring,wait for ring application,,,app_waitforring,,))
817 $(eval $(call BuildAsteriskModule,app-waitforsilence,Wait for silence/noise,wait for silence,,,app_waitforsilence,,))
818 $(eval $(call BuildAsteriskModule,app-waituntil,Sleep,support sleeping until the given epoch,,,app_waituntil,,))
819 $(eval $(call BuildAsteriskModule,app-while,While loop,a while loop implementation,,,app_while,,))
820 $(eval $(call BuildAsteriskModule,app-zapateller,Block telemarketers,playback the special information tone to get rid of telemarketers,,,app_zapateller,,))
821 $(eval $(call BuildAsteriskModule,bridge-builtin-features,Bridging features,built in bridging features,,,bridge_builtin_features,,))
822 $(eval $(call BuildAsteriskModule,bridge-builtin-interval-features,Built in bridging interval features,built in bridging interval features,,,bridge_builtin_interval_features,,))
823 $(eval $(call BuildAsteriskModule,bridge-holding,Bridging for storing channels in a bridge,bridging technology for storing channels in a bridge,,,bridge_holding,,))
824 $(eval $(call BuildAsteriskModule,bridge-native-rtp,Native RTP bridging technology module,native RTP bridging technology module,,,bridge_native_rtp,,))
825 $(eval $(call BuildAsteriskModule,bridge-simple,Simple two channel bridging module,simple two channel bridging module,,,bridge_simple,,))
826 $(eval $(call BuildAsteriskModule,bridge-softmix,Multi-party software based channel mixing,multi-party software based channel mixing,,,bridge_softmix,,))
827 $(eval $(call BuildAsteriskModule,cdr,Provides CDR,Call Detail Record,,cdr.conf cdr_custom.conf cdr_manager.conf cdr_syslog.conf,app_cdr app_forkcdr cdr_custom cdr_manager cdr_syslog func_cdr,,))
828 $(eval $(call BuildAsteriskModule,cdr-csv,Provides CDR CSV,Call Detail Record with CSV support,,,cdr_csv,,))
829 $(eval $(call BuildAsteriskModule,cdr-sqlite3,Provides CDR SQLITE3,Call Detail Record with SQLITE3 support,libsqlite3,,cdr_sqlite3_custom,,))
830 $(eval $(call BuildAsteriskModule,cel-custom,Customizable CSV CEL backend,custom Comma Separated Value CEL records,,cel_custom.conf,cel_custom,,))
831 $(eval $(call BuildAsteriskModule,cel-manager,AMI CEL backend,Asterisk channel event records,,,cel_manager,,))
832 $(eval $(call BuildAsteriskModule,cel-sqlite3-custom,SQLite3 custom CEL,custom SQLite3 CEL records,,cel_sqlite3_custom.conf,cel_sqlite3_custom,,))
833 $(eval $(call BuildAsteriskModule,chan-alsa,ALSA channel,the channel chan_alsa,+alsa-lib,alsa.conf,chan_alsa,,))
834 $(eval $(call BuildAsteriskModule,chan-bridge-media,Bridge media channel driver,bridge media channel driver,,,chan_bridge_media,,))
835 $(eval $(call BuildAsteriskModule,chan-console,Console channel driver,cross-platform console channel driver,+portaudio,console.conf,chan_console,,))
836 $(eval $(call BuildAsteriskModule,chan-dahdi,DAHDI channel,DAHDI channel support,+dahdi-tools-libtonezone +kmod-dahdi +libpri @!aarch64,chan_dahdi.conf,chan_dahdi,,))
837 $(eval $(call BuildAsteriskModule,chan-iax2,IAX2 channel,IAX support,+$(PKG_NAME)-res-timing-timerfd,iax.conf iaxprov.conf,chan_iax2,,))
838 $(eval $(call BuildAsteriskModule,chan-mgcp,MGCP,Media Gateway Control Protocol,,mgcp.conf,chan_mgcp,,))
839 $(eval $(call BuildAsteriskModule,chan-mobile,Bluetooth channel,Bluetooth mobile device channel driver,+bluez-libs,chan_mobile.conf,chan_mobile,,))
840 $(eval $(call BuildAsteriskModule,chan-motif,Jingle channel,Motif Jingle Channel Driver,+$(PKG_NAME)-res-xmpp,motif.conf,chan_motif,,))
841 $(eval $(call BuildAsteriskModule,chan-ooh323,H.323 channel,Objective Systems H.323 channel,,ooh323.conf,chan_ooh323,,))
842 $(eval $(call BuildAsteriskModule,chan-oss,OSS channel,the channel chan_oss,,oss.conf,chan_oss,,))
843 $(eval $(call BuildAsteriskModule,chan-phone,Linux telephony API,generic Linux telephony interface driver,,phone.conf,chan_phone,,))
844 $(eval $(call BuildAsteriskModule,chan-rtp,RTP media channel,RTP [Multicast and Unicast] media channel,,,chan_rtp,,))
845 $(eval $(call BuildAsteriskModule,chan-sip,SIP channel,the channel chan_sip,+$(PKG_NAME)-app-confbridge,sip.conf sip_notify.conf,chan_sip,,))
846 $(eval $(call BuildAsteriskModule,chan-skinny,Skinny channel,the channel chan_skinny,,skinny.conf,chan_skinny,,))
847 $(eval $(call BuildAsteriskModule,chan-unistim,Unistim channel,channel driver for the UNISTIM (Unified Networks IP Stimulus) protocol,,unistim.conf,chan_unistim,,))
848 $(eval $(call BuildAsteriskModule,codec-a-mu,Alaw to ulaw translation,translation between alaw and ulaw codecs,,,codec_a_mu,,))
849 $(eval $(call BuildAsteriskModule,codec-adpcm,ADPCM text,ADPCM text ,,,codec_adpcm,,))
850 $(eval $(call BuildAsteriskModule,codec-alaw,Signed linear to alaw translation,translation between signed linear and alaw codecs,,,codec_alaw,,))
851 $(eval $(call BuildAsteriskModule,codec-dahdi,DAHDI codec,DAHDI native transcoding support,+$(PKG_NAME)-chan-dahdi,,codec_dahdi,,))
852 $(eval $(call BuildAsteriskModule,codec-g722,G.722,a high bit rate 48/56/64Kbps ITU standard codec,,,codec_g722,,))
853 $(eval $(call BuildAsteriskModule,codec-g726,Signed linear to G.726 translation,translation between signed linear and ITU G.726-32kbps codecs,,,codec_g726,,))
854 $(eval $(call BuildAsteriskModule,codec-gsm,linear to GSM translation,translate between signed linear and GSM,,,codec_gsm,,))
855 $(eval $(call BuildAsteriskModule,codec-ilbc,linear to ILBC translation,translate between signed linear and ILBC,,,codec_ilbc,,))
856 $(eval $(call BuildAsteriskModule,codec-lpc10,Linear to LPC10 translation,translate between signed linear and LPC10,,,codec_lpc10,,))
857 $(eval $(call BuildAsteriskModule,codec-resample,resample sLinear audio,resample sLinear audio,,,codec_resample,,))
858 $(eval $(call BuildAsteriskModule,codec-speex,Speex Coder/Decoder,translate between signed linear and Speex,@!SOFT_FLOAT +libspeex +libspeexdsp,,codec_speex,,))
859 $(eval $(call BuildAsteriskModule,codec-ulaw,Signed linear to ulaw translation,translation between signed linear and ulaw codecs,,,codec_ulaw,,))
860 $(eval $(call BuildAsteriskModule,curl,CURL,CURL support,+libcurl,,func_curl res_config_curl res_curl,,))
861 $(eval $(call BuildAsteriskModule,format-g719,G.719,ITU G.719 64kbps-only,,,format_g719,,))
862 $(eval $(call BuildAsteriskModule,format-g723,G.723.1,old-style G.723.1 frame/timestamp format,,,format_g723,,))
863 $(eval $(call BuildAsteriskModule,format-g726,G.726,support for headerless G.726 16/24/32/40kbps data format,,,format_g726,,))
864 $(eval $(call BuildAsteriskModule,format-g729,G.729,support for raw headerless G729 data,,,format_g729,,))
865 $(eval $(call BuildAsteriskModule,format-gsm,GSM format,support for GSM format,,,format_gsm,,))
866 $(eval $(call BuildAsteriskModule,format-h263,H263 format,support for H264 format,,,format_h263,,))
867 $(eval $(call BuildAsteriskModule,format-h264,H264 format,support for H264 format,,,format_h264,,))
868 $(eval $(call BuildAsteriskModule,format-ilbc,ILBC format,support for ILBC format,,,format_ilbc,,))
869 $(eval $(call BuildAsteriskModule,format-mp3,MP3 format,support for MP3 format,@BROKEN,,format_mp3,,)) # requires patched mpg123 source
870 $(eval $(call BuildAsteriskModule,format-ogg-speex,OGG/Speex audio,OGG/Speex streams,@!SOFT_FLOAT +libogg +libspeex,,format_ogg_speex,,))
871 $(eval $(call BuildAsteriskModule,format-ogg-vorbis,OGG/Vorbis audio,OGG/Vorbis streams,+libvorbis,,format_ogg_vorbis,,))
872 $(eval $(call BuildAsteriskModule,format-pcm,PCM format,support for PCM format,,,format_pcm,,))
873 $(eval $(call BuildAsteriskModule,format-siren14,Siren14,ITU G.722.1 Annex C Siren14 48kbps-only format,,,format_siren14,,))
874 $(eval $(call BuildAsteriskModule,format-siren7,Siren7,ITU G.722.1 Siren7 32kbps-only format,,,format_siren7,,))
875 $(eval $(call BuildAsteriskModule,format-sln,Raw slinear format,support for raw slinear format,,,format_sln,,))
876 $(eval $(call BuildAsteriskModule,format-vox,VOX format,support for ADPCM vox format,,,format_vox,,))
877 $(eval $(call BuildAsteriskModule,format-wav,WAV format (8000hz Signed Linear),support for proprietary Microsoft WAV format (8000hz Signed Linear),,,format_wav,,))
878 $(eval $(call BuildAsteriskModule,format-wav-gsm,WAV format (Proprietary GSM),support for proprietary Microsoft WAV format (Proprietary GSM),,,format_wav_gsm,,))
879 $(eval $(call BuildAsteriskModule,func-aes,AES dialplan functions,AES encryption/decryption dialplan functions,,,func_aes,,))
880 $(eval $(call BuildAsteriskModule,func-base64,base64 support,support of base64 function,,,func_base64,,))
881 $(eval $(call BuildAsteriskModule,func-blacklist,Blacklist on callerid,looking up the callerid number and see if it is blacklisted,,,func_blacklist,,))
882 $(eval $(call BuildAsteriskModule,func-callcompletion,Call control configuration function,call completion supplementary services implementation,,,func_callcompletion,,))
883 $(eval $(call BuildAsteriskModule,func-channel,Channel info,Channel info dialplan function,,,func_channel,,))
884 $(eval $(call BuildAsteriskModule,func-config,Configuration file variable access,a function to retrieve variables from an Asterisk configuration file,,,func_config,,))
885 $(eval $(call BuildAsteriskModule,func-cut,CUT function,CUT function,,,func_cut,,))
886 $(eval $(call BuildAsteriskModule,func-db,Database interaction,functions for interaction with the database,,,func_db app_db,,))
887 $(eval $(call BuildAsteriskModule,func-devstate,Blinky lights control,functions for manually controlled blinky lights,,,func_devstate,,))
888 $(eval $(call BuildAsteriskModule,func-dialgroup,Dialgroup dialplan function,dialgroup dialplan function,,,func_dialgroup,,))
889 $(eval $(call BuildAsteriskModule,func-dialplan,Dialplan context/extension/priority checking functions,dialplan group functions check if a dialplan entry exists,,,func_dialplan,,))
890 $(eval $(call BuildAsteriskModule,func-enum,ENUM,ENUM,,enum.conf,func_enum,,))
891 $(eval $(call BuildAsteriskModule,func-env,Environment functions,Environment dialplan functions,,,func_env,,))
892 $(eval $(call BuildAsteriskModule,func-extstate,Hinted extension state,retrieving the state of a hinted extension for dialplan control,,,func_extstate,,))
893 $(eval $(call BuildAsteriskModule,func-frame-trace,Frame trace for internal ast_frame debugging,trace internal ast_frames on a channel,,,func_frame_trace,,))
894 $(eval $(call BuildAsteriskModule,func-global,Global variable,global variable dialplan functions,,,func_global,,))
895 $(eval $(call BuildAsteriskModule,func-groupcount,Group count,for counting number of channels in the specified group,,,func_groupcount,,))
896 $(eval $(call BuildAsteriskModule,func-hangupcause,HANGUPCAUSE related functions,functions related to retreiving per-channel hangupcause information,,,func_hangupcause,,))
897 $(eval $(call BuildAsteriskModule,func-holdintercept,Hold interception dialplan function,function that intercepts HOLD frames from channels and raises events,,,func_holdintercept,,))
898 $(eval $(call BuildAsteriskModule,func-iconv,Charset conversion,charset conversion,,,func_iconv,,,$(ICONV_DEPENDS)))
899 $(eval $(call BuildAsteriskModule,func-jitterbuffer,Jitter buffer for read side of channel,put a jitterbuffer on the read side of a channel,,,func_jitterbuffer,,))
900 $(eval $(call BuildAsteriskModule,func-lock,Dialplan mutexes,dialplan mutexes,,,func_lock,,))
901 $(eval $(call BuildAsteriskModule,func-math,Math functions,Math functions,,,func_math,,))
902 $(eval $(call BuildAsteriskModule,func-md5,MD5 digest dialplan functions,MD5 digest related dialplan functions,,,func_md5,,))
903 $(eval $(call BuildAsteriskModule,func-module,Simple module check function,Simple module check function,,,func_module,,))
904 $(eval $(call BuildAsteriskModule,func-periodic-hook,Periodic dialplan hooks,Execute a periodic dialplan hook into the audio of a call,+$(PKG_NAME)-app-chanspy +$(PKG_NAME)-func-cut +$(PKG_NAME)-func-groupcount +$(PKG_NAME)-func-uri,,func_periodic_hook,,))
905 $(eval $(call BuildAsteriskModule,func-pitchshift,Audio effects dialplan functions,pitch shift audio effect,,,func_pitchshift,,))
906 $(eval $(call BuildAsteriskModule,func-presencestate,Hinted presence state,Gets or sets a presence state in the dialplan,,,func_presencestate,,))
907 $(eval $(call BuildAsteriskModule,func-rand,RAND dialplan function,RAND dialplan function,,,func_rand,,))
908 $(eval $(call BuildAsteriskModule,func-realtime,REALTIME dialplan function,REALTIME dialplan function,,,func_realtime,,))
909 $(eval $(call BuildAsteriskModule,func-sha1,SHA-1 computation dialplan function,SHA1 digest related dialplan functions,,,func_sha1,,))
910 $(eval $(call BuildAsteriskModule,func-shell,Shell,support for shell execution,,,func_shell,,))
911 $(eval $(call BuildAsteriskModule,func-sorcery,Get a field from a sorcery object,get a field from a sorcery object,,,func_sorcery,,))
912 $(eval $(call BuildAsteriskModule,func-speex,Noise reduction and AGC,noise reduction and automatic gain control,@!SOFT_FLOAT +libspeex +libspeexdsp,,func_speex,,))
913 $(eval $(call BuildAsteriskModule,func-sprintf,SPRINTF dialplan function,string manipulation dialplan functions,,,func_sprintf,,))
914 $(eval $(call BuildAsteriskModule,func-srv,SRV functions,SRV related dialplan functions,,,func_srv,,))
915 $(eval $(call BuildAsteriskModule,func-sysinfo,System information related functions,SYSINFO function to return various system data,,,func_sysinfo,,))
916 $(eval $(call BuildAsteriskModule,func-talkdetect,Talk detection dialplan function,function that raises events when talking is detected on a channel,,,func_talkdetect,,))
917 $(eval $(call BuildAsteriskModule,func-uri,URI encoding and decoding,Encodes and decodes URI-safe strings,,,func_uri,,))
918 $(eval $(call BuildAsteriskModule,func-version,Get Asterisk version/build info,return the current version strings,,,func_version,,))
919 $(eval $(call BuildAsteriskModule,func-vmcount,vmcount dialplan,a vmcount dialplan function,,,func_vmcount,,))
920 $(eval $(call BuildAsteriskModule,func-volume,Technology independent volume control,technology independent volume control,,,func_volume,,))
921 $(eval $(call BuildAsteriskModule,odbc,ODBC,ODBC support,+libpthread +libc +unixodbc,cdr_adaptive_odbc.conf cdr_odbc.conf cel_odbc.conf func_odbc.conf res_odbc.conf,cdr_adaptive_odbc cdr_odbc cel_odbc func_odbc res_config_odbc res_odbc res_odbc_transaction,,))
922 $(eval $(call BuildAsteriskModule,pbx-ael,Asterisk Extension Logic,support for symbolic Asterisk Extension Logic,+$(PKG_NAME)-res-ael-share,extensions.ael,pbx_ael,,))
923 $(eval $(call BuildAsteriskModule,pbx-dundi,Dundi,provides Dundi Lookup service for Asterisk,,dundi.conf,pbx_dundi,,))
924 $(eval $(call BuildAsteriskModule,pbx-loopback,Loopback switch,loopback PBX module,,,pbx_loopback,,))
925 $(eval $(call BuildAsteriskModule,pbx-lua,Lua,provides Lua resources for Asterisk,+liblua,extensions.lua,pbx_lua,,))
926 $(eval $(call BuildAsteriskModule,pbx-realtime,Realtime Switch,realtime switch support,,,pbx_realtime,,))
927 $(eval $(call BuildAsteriskModule,pbx-spool,Call Spool,outgoing call spool support,,,pbx_spool,,))
928 $(eval $(call BuildAsteriskModule,pgsql,PostgreSQL,PostgreSQL support,+libpq,cel_pgsql.conf cdr_pgsql.conf res_pgsql.conf,cel_pgsql cdr_pgsql res_config_pgsql,,))
929 $(eval $(call BuildAsteriskModule,pjsip,pjsip channel,the channel pjsip,+$(PKG_NAME)-res-http-websocket +$(PKG_NAME)-res-pjproject +$(PKG_NAME)-res-sorcery +libpjsip +libpjmedia +libpjnath +libpjsip-simple +libpjsip-ua +libpjsua +libpjsua2,pjsip.conf pjsip_notify.conf pjsip_wizard.conf,chan_pjsip func_pjsip_aor func_pjsip_contact func_pjsip_endpoint res_pjsip res_pjsip_acl res_pjsip_authenticator_digest res_pjsip_caller_id res_pjsip_config_wizard res_pjsip_dialog_info_body_generator res_pjsip_diversion res_pjsip_dlg_options res_pjsip_dtmf_info res_pjsip_empty_info res_pjsip_endpoint_identifier_anonymous res_pjsip_endpoint_identifier_ip res_pjsip_endpoint_identifier_user res_pjsip_exten_state res_pjsip_header_funcs res_pjsip_history res_pjsip_logger res_pjsip_messaging res_pjsip_mwi res_pjsip_mwi_body_generator res_pjsip_nat res_pjsip_notify res_pjsip_one_touch_record_info res_pjsip_outbound_authenticator_digest res_pjsip_outbound_publish res_pjsip_outbound_registration res_pjsip_path res_pjsip_pidf_body_generator res_pjsip_pidf_digium_body_supplement res_pjsip_pidf_eyebeam_body_supplement res_pjsip_publish_asterisk res_pjsip_pubsub res_pjsip_refer res_pjsip_registrar res_pjsip_rfc3326 res_pjsip_sdp_rtp res_pjsip_send_to_voicemail res_pjsip_session res_pjsip_sips_contact res_pjsip_t38 res_pjsip_transport_websocket res_pjsip_xpidf_body_generator,,))
930 $(eval $(call BuildAsteriskModule,res-adsi,Provide ADSI,Analog Display Services Interface capability,,,res_adsi,,))
931 $(eval $(call BuildAsteriskModule,res-ael-share,Shareable AEL code,support for shareable AEL code mainly between internal and external modules,,,res_ael_share,,))
932 $(eval $(call BuildAsteriskModule,res-agi,Asterisk Gateway Interface,Support for the Asterisk Gateway Interface extension,+$(PKG_NAME)-res-speech,,res_agi,,))
933 $(eval $(call BuildAsteriskModule,res-ari,Asterisk RESTful interface,HTTP binding for the Stasis API,+$(PKG_NAME)-res-http-websocket,ari.conf,res_ari,,))
934 $(eval $(call BuildAsteriskModule,res-ari-applications,RESTful Stasis application resources,RESTful API module - Stasis application resources,+$(PKG_NAME)-res-ari +$(PKG_NAME)-res-ari-model +$(PKG_NAME)-res-stasis,,res_ari_applications,))
935 $(eval $(call BuildAsteriskModule,res-ari-asterisk,RESTful Asterisk resources,RESTful API module - Asterisk resources,+$(PKG_NAME)-res-ari +$(PKG_NAME)-res-ari-model +$(PKG_NAME)-res-stasis,,res_ari_asterisk,,))
936 $(eval $(call BuildAsteriskModule,res-ari-bridges,RESTful bridge resources,RESTful API module - bridge resources,+$(PKG_NAME)-res-ari +$(PKG_NAME)-res-ari-model +$(PKG_NAME)-res-stasis-playback,,res_ari_bridges,,))
937 $(eval $(call BuildAsteriskModule,res-ari-channels,RESTful channel resources,RESTful API module - channel resources,+$(PKG_NAME)-res-ari +$(PKG_NAME)-res-ari-model +$(PKG_NAME)-res-stasis-answer +$(PKG_NAME)-res-stasis-playback +$(PKG_NAME)-res-stasis-snoop,,res_ari_channels,,))
938 $(eval $(call BuildAsteriskModule,res-ari-device-states,RESTful device state resources,RESTful API module - device state resources,+$(PKG_NAME)-res-ari +$(PKG_NAME)-res-ari-model +$(PKG_NAME)-res-stasis-device-state,,res_ari_device_states,,))
939 $(eval $(call BuildAsteriskModule,res-ari-endpoints,RESTful endpoint resources,RESTful API module - endpoint resources,+$(PKG_NAME)-res-ari +$(PKG_NAME)-res-ari-model +$(PKG_NAME)-res-stasis,,res_ari_endpoints,,))
940 $(eval $(call BuildAsteriskModule,res-ari-events,RESTful WebSocket resource,RESTful API module - WebSocket resource,+$(PKG_NAME)-res-ari +$(PKG_NAME)-res-ari-model +$(PKG_NAME)-res-stasis,,res_ari_events,,))
941 $(eval $(call BuildAsteriskModule,res-ari-mailboxes,RESTful mailboxes resources,RESTful API module - mailboxes resources,+$(PKG_NAME)-res-ari +$(PKG_NAME)-res-ari-model +$(PKG_NAME)-res-stasis-mailbox,,res_ari_mailboxes,,))
942 $(eval $(call BuildAsteriskModule,res-ari-model,ARI model validators,ARI model validators,,,res_ari_model,,))
943 $(eval $(call BuildAsteriskModule,res-ari-playbacks,RESTful playback control resources,RESTful API module - playback control resources,+$(PKG_NAME)-res-ari +$(PKG_NAME)-res-ari-model +$(PKG_NAME)-res-stasis-playback,,res_ari_playbacks,,))
944 $(eval $(call BuildAsteriskModule,res-ari-recordings,RESTful recording resources,RESTful API module - recording resources,+$(PKG_NAME)-res-ari +$(PKG_NAME)-res-ari-model +$(PKG_NAME)-res-stasis-recording,,res_ari_recordings,,))
945 $(eval $(call BuildAsteriskModule,res-ari-sounds,RESTful sound resources,RESTful API module - sound resources,+$(PKG_NAME)-res-ari +$(PKG_NAME)-res-ari-model +$(PKG_NAME)-res-stasis,,res_ari_sounds,))
946 $(eval $(call BuildAsteriskModule,res-calendar,Calendar API,the calendar API,,calendar.conf,res_calendar,,))
947 $(eval $(call BuildAsteriskModule,res-calendar-caldav,CalDAV calendar,CalDAV calendar integration,+$(PKG_NAME)-res-calendar +libical +libneon +libxml2,,res_calendar_caldav,,))
948 $(eval $(call BuildAsteriskModule,res-calendar-ews,EWS calendar,MS Exchange Web Service calendar integration,+$(PKG_NAME)-res-calendar +libneon,,res_calendar_ews,,))
949 $(eval $(call BuildAsteriskModule,res-calendar-exchange,Exchange calendar,MS Exchange calendar integration,+$(PKG_NAME)-res-calendar +libical +libiksemel +libneon,,res_calendar_exchange,,))
950 $(eval $(call BuildAsteriskModule,res-calendar-icalendar,iCalendar calendar,iCalendar calendar integration,+$(PKG_NAME)-res-calendar +libical +libneon,,res_calendar_icalendar,,))
951 $(eval $(call BuildAsteriskModule,res-chan-stats,statsd channel stats,example of how to subscribe to Stasis events,+$(PKG_NAME)-res-statsd,,res_chan_stats,,))
952 $(eval $(call BuildAsteriskModule,res-clialiases,CLI aliases,CLI aliases,,cli_aliases.conf,res_clialiases,,))
953 $(eval $(call BuildAsteriskModule,res-clioriginate,Calls via CLI,Originate calls via the CLI,,,res_clioriginate,,))
954 $(eval $(call BuildAsteriskModule,res-config-ldap,LDAP realtime interface,LDAP plugin for portable configuration engine,+libopenldap,res_ldap.conf,res_config_ldap,,))
955 $(eval $(call BuildAsteriskModule,res-config-mysql,MySQL CDR backend,MySQL CDR backend,+libmysqlclient,,res_config_mysql,,))
956 $(eval $(call BuildAsteriskModule,res-config-sqlite3,SQLite 3 realtime config engine,SQLite 3 configuration engine,,,res_config_sqlite3,,))
957 $(eval $(call BuildAsteriskModule,res-convert,File format conversion CLI command,file format conversion CLI command using Asterisk formats and translators,,,res_convert,,))
958 $(eval $(call BuildAsteriskModule,res-endpoint-stats,Endpoint statistics,statsd endpoint stats,+$(PKG_NAME)-res-statsd,,res_endpoint_stats,,))
959 $(eval $(call BuildAsteriskModule,res-hep,HEPv3 API,Routines for integration with Homer using HEPv3,,hep.conf,res_hep,,))
960 $(eval $(call BuildAsteriskModule,res-hep-pjsip,PJSIP HEPv3 Logger,PJSIP logging with Homer,+$(PKG_NAME)-res-hep +$(PKG_NAME)-pjsip,,res_hep_pjsip,,))
961 $(eval $(call BuildAsteriskModule,res-hep-rtcp,RTCP HEPv3 Logger,RTCP logging with Homer,+$(PKG_NAME)-res-hep,,res_hep_rtcp,,))
962 $(eval $(call BuildAsteriskModule,res-fax-spandsp,Spandsp T.38 and G.711,Spandsp T.38 and G.711 FAX Resource,+$(PKG_NAME)-res-fax +libspandsp +libtiff,,res_fax_spandsp,,))
963 $(eval $(call BuildAsteriskModule,res-fax,FAX modules,Generic FAX resource for FAX technology resource modules,+$(PKG_NAME)-res-timing-pthread,res_fax.conf,res_fax,,))
964 $(eval $(call BuildAsteriskModule,res-format-attr-celt,CELT format attribute module,CELT format attribute interface,,,res_format_attr_celt,,))
965 $(eval $(call BuildAsteriskModule,res-format-attr-g729,G.729 format attribute module,G.729 format attribute interface,,,res_format_attr_g729,,))
966 $(eval $(call BuildAsteriskModule,res-format-attr-h263,H.263 format attribute module,H.263 format attribute interface,,,res_format_attr_h263,,))
967 $(eval $(call BuildAsteriskModule,res-format-attr-h264,H.264 format attribute module,H.264 format attribute interface,,,res_format_attr_h264,,))
968 $(eval $(call BuildAsteriskModule,res-format-attr-ilbc,ILBC format attribute module,ILBC format attribute interface,,,res_format_attr_ilbc,,))
969 $(eval $(call BuildAsteriskModule,res-format-attr-opus,Opus format attribute module,Opus format attribute interface,,,res_format_attr_opus,,))
970 $(eval $(call BuildAsteriskModule,res-format-attr-silk,SILK format attribute module,SILK format attribute interface,,,res_format_attr_silk,,))
971 $(eval $(call BuildAsteriskModule,res-format-attr-siren14,Siren14 format attribute module,Siren14 format attribute interface,,,res_format_attr_siren14,,))
972 $(eval $(call BuildAsteriskModule,res-format-attr-siren7,Siren7 format attribute module,Siren7 format attribute interface,,,res_format_attr_siren7,,))
973 $(eval $(call BuildAsteriskModule,res-format-attr-vp8,VP8 format attribute module,VP8 format attribute interface,,,res_format_attr_vp8,,))
974 $(eval $(call BuildAsteriskModule,res-http-media-cache,HTTP media cache backend,HTTP backend for the core media cache,+$(PKG_NAME)-curl,,res_http_media_cache,,))
975 $(eval $(call BuildAsteriskModule,res-http-websocket,HTTP websocket support,WebSocket support for the Asterisk internal HTTP server,,,res_http_websocket,,))
976 $(eval $(call BuildAsteriskModule,res-limit,Resource limits,resource limits,,,res_limit,,))
977 $(eval $(call BuildAsteriskModule,res-manager-devicestate,Device state topic forwarder,list the current known device states,,,res_manager_devicestate,,))
978 $(eval $(call BuildAsteriskModule,res-manager-presencestate,Presence state topic forwarder,list the current known presence states,,,res_manager_presencestate,,))
979 $(eval $(call BuildAsteriskModule,res-monitor,PBX channel monitoring,call monitoring resource,,,res_monitor,,))
980 $(eval $(call BuildAsteriskModule,res-musiconhold,MOH,Music On Hold support,,musiconhold.conf,res_musiconhold,,))
981 $(eval $(call BuildAsteriskModule,res-mutestream,Mute audio stream resources,MUTESTREAM audiohooks,,,res_mutestream,,))
982 $(eval $(call BuildAsteriskModule,res-mwi-devstate,MWI device state subs,This module allows presence subscriptions to voicemail boxes. This allows common BLF keys to act as voicemail waiting indicators.,,,res_mwi_devstate,,))
983 $(eval $(call BuildAsteriskModule,res-mwi-external,Core external MWI resource,core external MWI resource,,,res_mwi_external,,))
984 $(eval $(call BuildAsteriskModule,res-mwi-external-ami,AMI for external MWI,AMI wrapper for external MWI,+$(PKG_NAME)-res-mwi-external,,res_mwi_external_ami,,))
985 $(eval $(call BuildAsteriskModule,res-parking,Phone Parking,Phone Parking application,+$(PKG_NAME)-bridge-holding,res_parking.conf,res_parking,,))
986 $(eval $(call BuildAsteriskModule,res-phoneprov,Phone Provisioning,Phone provisioning application for the asterisk internal http server,,phoneprov.conf,res_phoneprov,,))
987 $(eval $(call BuildAsteriskModule,res-pjsip-phoneprov,PJSIP Phone Provisioning,PJSIP Phone Provisioning,+$(PKG_NAME)-pjsip +$(PKG_NAME)-res-phoneprov,,res_pjsip_phoneprov_provider,,))
988 $(eval $(call BuildAsteriskModule,res-pjproject,Bridge PJPROJECT to Asterisk logging,,+libpj +libpjlib-util +libpjmedia +libpjmedia +libpjnath +libpjsip-simple +libpjsip-ua +libpjsip +libpjsua +libpjsua2 +libsrtp2,pjproject.conf,res_pjproject,,))
989 $(eval $(call BuildAsteriskModule,res-pktccops,PktcCOPS manager for MGCP,PacketCable MGCP variation / NCS,,res_pktccops.conf,res_pktccops,,))
990 $(eval $(call BuildAsteriskModule,res-realtime,RealTime CLI,RealTime CLI,,,res_realtime,,))
991 $(eval $(call BuildAsteriskModule,res-remb-modifier,REMB modifier,REMB modifier,,,res_remb_modifier,,))
992 $(eval $(call BuildAsteriskModule,res-resolver-unbound,Unbound DNS resolver,Unbound DNS resolver,+libunbound,resolver_unbound.conf,res_resolver_unbound,,))
993 $(eval $(call BuildAsteriskModule,res-rtp-asterisk,RTP stack,Supports RTP and RTCP with Symmetric RTP support for NAT traversal,+libpjsip +libpjmedia +libpjnath +libpjsip-simple +libpjsip-ua +libpjsua +libpjsua2,rtp.conf,res_rtp_asterisk,,))
994 $(eval $(call BuildAsteriskModule,res-rtp-multicast,RTP multicast engine,Multicast RTP Engine,,,res_rtp_multicast,,))
995 $(eval $(call BuildAsteriskModule,res-security-log,Security event logging,security event logging,,,res_security_log,,))
996 $(eval $(call BuildAsteriskModule,res-smdi,Provide SMDI,Simple Message Desk Interface capability,,smdi.conf,res_smdi,,))
997 $(eval $(call BuildAsteriskModule,res-snmp,SNMP [Sub]Agent for Asterisk,SNMP Agent / SubAgent,+libnetsnmp,res_snmp.conf,res_snmp,,))
998 $(eval $(call BuildAsteriskModule,res-sorcery,Sorcery data layer,Sorcery backend modules for data access intended for using realtime as backend,,sorcery.conf,res_sorcery_astdb res_sorcery_config res_sorcery_memory res_sorcery_realtime,,))
999 $(eval $(call BuildAsteriskModule,res-sorcery-memory-cache,Sorcery memory cache object wizard,sorcery memory cache object wizard,,,res_sorcery_memory_cache,,))
1000 $(eval $(call BuildAsteriskModule,res-speech,Speech Recognition API,Support for the Asterisk Generic Speech Recognition API,,,res_speech,,))
1001 $(eval $(call BuildAsteriskModule,res-srtp,SRTP Support,Secure RTP connection,+libsrtp2,,res_srtp,,))
1002 $(eval $(call BuildAsteriskModule,res-stasis,Stasis application,Stasis application,,,res_stasis,,))
1003 $(eval $(call BuildAsteriskModule,res-stasis-answer,Stasis application answer,Stasis application control,+$(PKG_NAME)-res-stasis,,res_stasis_answer,,))
1004 $(eval $(call BuildAsteriskModule,res-stasis-device-state,Stasis application device state,Stasis application control,+$(PKG_NAME)-res-stasis,,res_stasis_device_state,,))
1005 $(eval $(call BuildAsteriskModule,res-stasis-mailbox,Stasis application mailbox,Stasis application control,+$(PKG_NAME)-res-stasis +$(PKG_NAME)-res-mwi-external,,res_stasis_mailbox,,))
1006 $(eval $(call BuildAsteriskModule,res-stasis-playback,Stasis application playback,res_stasis playback,+$(PKG_NAME)-res-stasis-recording,,res_stasis_playback,,))
1007 $(eval $(call BuildAsteriskModule,res-stasis-recording,Stasis application recording,res_stasis recording,+$(PKG_NAME)-res-stasis,,res_stasis_recording,,))
1008 $(eval $(call BuildAsteriskModule,res-stasis-snoop,Stasis application snoop,Stasis application snoop control,+$(PKG_NAME)-res-stasis-recording,,res_stasis_snoop,,))
1009 $(eval $(call BuildAsteriskModule,res-statsd,statsd client,publishing to a statsd server,,statsd.conf,res_statsd,,))
1010 $(eval $(call BuildAsteriskModule,res-stun-monitor,STUN monitoring,resource STUN Monitor,,res_stun_monitor.conf,res_stun_monitor,,))
1011 $(eval $(call BuildAsteriskModule,res-timing-dahdi,DAHDI Timing Interface,DAHDI timing interface,+$(PKG_NAME)-chan-dahdi,,res_timing_dahdi,,))
1012 $(eval $(call BuildAsteriskModule,res-timing-pthread,pthread Timing Interface,POSIX pthreads Timing Interface,,,res_timing_pthread,,))
1013 $(eval $(call BuildAsteriskModule,res-timing-timerfd,Timerfd Timing Interface,Timing interface provided by Linux kernel,,,res_timing_timerfd,,))
1014 $(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,xmpp.conf,res_xmpp,,))
1015 $(eval $(call BuildAsteriskModule,voicemail,Voicemail,voicemail related modules,+$(PKG_NAME)-res-adsi +$(PKG_NAME)-res-smdi,voicemail.conf,app_voicemail,vm-*,))
1016
1017 ################################
1018 # AST utils
1019 # Params:
1020 # 1 - Utility name
1021 # 2 - Description
1022 # 3 - Dependencies
1023 # 4 - Configuration files
1024 ################################
1025 # $(eval $(call BuildAsteriskUtil,Utility,Description,Dependencies,Configuration Files))
1026
1027 $(eval $(call BuildAsteriskUtil,aelparse,Check extensions.ael file.,+$(PKG_NAME)-pbx-ael,))
1028 $(eval $(call BuildAsteriskUtil,astcanary,Assures Asterisk no threads have gone missing.,,))
1029 $(eval $(call BuildAsteriskUtil,astdb2sqlite3,Convert astdb to SQLite 3.,,))
1030 $(eval $(call BuildAsteriskUtil,astdb2bdb,Convert astdb back to Berkeley DB 1.86.,,))
1031 $(eval $(call BuildAsteriskUtil,check_expr,Expression checker [older version].,,))
1032 $(eval $(call BuildAsteriskUtil,check_expr2,Expression checker [newer version].,,))
1033 $(eval $(call BuildAsteriskUtil,conf2ael,Convert .conf to .ael.,+$(PKG_NAME)-pbx-ael,))
1034 $(eval $(call BuildAsteriskUtil,muted,Listens for AMI events. Mutes soundcard during call.,,muted.conf))
1035 $(eval $(call BuildAsteriskUtil,smsq,Send messages from command line.,+libpopt,))
1036 $(eval $(call BuildAsteriskUtil,stereorize,Merge two mono WAV-files to one stereo WAV-file.,,))
1037 $(eval $(call BuildAsteriskUtil,streamplayer,A utility for reading from a raw TCP stream [MOH source].,,))