2 # Copyright (C) 2006-2014 OpenWrt.org
3 # Copyright (C) 2006-2011 SMBPhone
5 # This is free software, licensed under the GNU General Public License v2.
6 # See /LICENSE for more information.
9 include $(TOPDIR
)/rules.mk
10 include $(INCLUDE_DIR
)/uclibc
++.mk
15 PKG_VERSION
:=$(RELEASEVER
)-1
18 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).
tar.gz
19 PKG_SOURCE_URL
:=http
://yate.null.ro
/tarballs
/yate5
/
20 PKG_MD5SUM
:=427fd2ffde51116271534f398bf913e8
21 PKG_BUILD_DIR
:=$(BUILD_DIR
)/$(PKG_NAME
)
25 include $(INCLUDE_DIR
)/package.mk
27 define Package
/$(PKG_NAME
)/Default
31 URL
:=http
://yate.null.ro
/
34 define Package
/$(PKG_NAME
)
35 $(call Package
/yate
/Default
)
36 DEPENDS
:=+libpthread
$(CXX_DEPENDS
)
37 TITLE
:=Yet Another Telphony Engine
41 define Package
/$(PKG_NAME
)/conffiles
46 define Package
/$(PKG_NAME
)/Default
/description
47 Is a next-generation telephony engine focused on the VoIP and PSTN. It does
48 SIP
, H
.323, IAX
, PSTN
, and more.
51 define Package
/$(PKG_NAME
)-scripts-perl
52 $(call Package
/yate
/Default
)
53 DEPENDS
+= $(PKG_NAME
) $(PKG_NAME
)-mod-extmodule
+perl
54 TITLE
:= Perl module for Yate
57 define Package
/$(PKG_NAME
)-sounds
58 $(call Package
/yate
/Default
)
59 DEPENDS
+= $(PKG_NAME
)
60 TITLE
:= Sounds for Yate
63 define Package
/$(PKG_NAME
)-collection-basic
64 $(call Package
/yate
/Default
)
65 DEPENDS
+= $(PKG_NAME
) \
67 +$(PKG_NAME
)-mod-dumbchan \
68 +$(PKG_NAME
)-mod-regfile \
69 +$(PKG_NAME
)-mod-regexroute \
70 +$(PKG_NAME
)-mod-rmanager \
71 +$(PKG_NAME
)-mod-tonegen \
72 +$(PKG_NAME
)-mod-yrtpchan \
73 +$(PKG_NAME
)-mod-ysipchan
74 TITLE
:= Basic Yate Server
77 TARGET_CFLAGS
+= -I
$(STAGING_DIR
)/usr
/include $(if
$(CONFIG_BIG_ENDIAN
),-DBIGENDIAN
,)
87 --enable-internalregex \
94 --enable-ilbc-webrtc \
96 --disable-isac-fixed \
98 --with-libpq
="$(STAGING_DIR)/usr" \
99 --with-mysql
="$(STAGING_DIR)/usr" \
102 --with-libspeex
="$(STAGING_DIR)/usr/include" \
104 --with-spandsp
="$(STAGING_DIR)/usr/include" \
107 --with-openssl
="$(STAGING_DIR)/usr" \
108 --with-zlib
="$(STAGING_DIR)/usr" \
111 --without-coredumper \
116 LDFLAGS
="$$$$LDFLAGS -nodefaultlibs" \
117 LIBS
="-lc -luClibc++ -lpthread -lresolv -ldl -lm -lc $(LIBGCC_S)"
119 define Package
/$(PKG_NAME
)/install
120 $(INSTALL_DIR
) $(1)/usr
/lib
122 for yatelib in
"" sig mgcp jabber script
; do \
123 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/lib
/libyate
$$$${yatelib}.so.
$(RELEASEVER
) $(1)/usr
/lib
;\
124 $(LN
) .
/libyate
$$$${yatelib}.so.
$(RELEASEVER
) $(1)/usr
/lib
/libyate
$$$${yatelib}.so
;\
127 $(INSTALL_DIR
) $(1)/usr
/bin
128 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/yate
$(1)/usr
/bin
/
129 $(INSTALL_DIR
) $(1)/etc
/$(PKG_NAME
)
130 $(INSTALL_DATA
) $(PKG_INSTALL_DIR
)/etc
/yate
/yate.conf
$(1)/etc
/$(PKG_NAME
)/yate.conf
131 $(INSTALL_DIR
) $(1)/etc
/init.d
132 $(INSTALL_BIN
) .
/files
/yate.init
$(1)/etc
/init.d
/yate
135 define Package
/$(PKG_NAME
)-scripts-perl
/install
136 $(INSTALL_DIR
) $(1)/usr
/share
/yate
/scripts
137 $(INSTALL_DATA
) $(PKG_INSTALL_DIR
)/usr
/share
/yate
/scripts
/Yate.pm
$(1)/usr
/share
/yate
/scripts
/
140 define Package
/$(PKG_NAME
)-sounds
/install
141 $(INSTALL_DIR
) $(1)/usr
/share
/yate
/sounds
142 $(CP
) $(PKG_INSTALL_DIR
)/usr
/share
/yate
/sounds
/ $(1)/usr
/share
/yate
/
145 define Package
/$(PKG_NAME
)-collection-basic
/install
148 define Build
/InstallDev
149 $(INSTALL_DIR
) $(STAGING_DIR
)/usr
/include
150 $(CP
) $(PKG_INSTALL_DIR
)/usr
/include/* $(STAGING_DIR
)/usr
/include/
151 $(INSTALL_DIR
) $(STAGING_DIR
)/usr
/lib
152 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/* $(STAGING_DIR
)/usr
/lib
/
156 define Package
/$(PKG_NAME
)-mod-
$(1)
157 $(call Package
/yate
/Default
)
158 DEPENDS
:= $(PKG_NAME
) $(4)
162 $(if
$(PKG_BUILD_DIR
)/conf.d
/$(1).conf.sample
,
163 define Package
/$(PKG_NAME
)-mod-
$(1)/conffiles
168 define Package
/$(PKG_NAME
)-mod-
$(1)/description
169 $(3) module for
$(PKG_NAME
)
172 define Package
/$(PKG_NAME
)-mod-
$(1)/install
173 $$(INSTALL_DIR
) $$(1)/usr
/lib
/yate
/$(2)
174 $$(INSTALL_BIN
) $$(PKG_INSTALL_DIR
)/usr
/lib
/yate
/$(2)/$(1).yate
$$(1)/usr
/lib
/yate
/$(2)/$(1).yate
175 if
[ -f
$$(PKG_INSTALL_DIR
)/etc
/yate
/$(1).conf
]; then \
176 $$(INSTALL_DIR
) $$(1)/etc
/yate
;\
177 $$(INSTALL_DATA
) $$(PKG_INSTALL_DIR
)/etc
/yate
/$(1).conf
$$(1)/etc
/yate
/ ;\
179 $(if
$(5),$(foreach extra_file
,$(5),\
180 $(INSTALL_DIR
) $$(1)$(dir $(extra_file
)) ; \
181 $(CP
) $(PKG_INSTALL_DIR
)$(extra_file
) $$(1)$(extra_file
) ; \
185 $$(eval
$$(call BuildPackage
,$(PKG_NAME
)-mod-
$(1)))
188 $(eval
$(call BuildPackage
,$(PKG_NAME
)))
189 $(eval
$(call BuildPackage
,$(PKG_NAME
)-collection-basic
))
190 $(eval
$(call BuildPackage
,$(PKG_NAME
)-scripts-perl
))
191 $(eval
$(call BuildPackage
,$(PKG_NAME
)-sounds
))
192 $(eval
$(call BuildPlugin
,accfile
,server
,SIP or H
.323 client
(from file
),))
193 $(eval
$(call BuildPlugin
,alsachan
,client
,ALSA Sound Channel
,+alsa-lib
))
194 $(eval
$(call BuildPlugin
,amrnbcodec
,,AMR-NB Codec
,@BROKEN
)) # Missing amr-nb library
195 $(eval
$(call BuildPlugin
,analog
,server
,Analog
(e.g. POTS
) Channel
,))
196 $(eval
$(call BuildPlugin
,analogdetect
,server
,Analog Data Detector
,))
197 $(eval
$(call BuildPlugin
,analyzer
,,Test Call Generator and AQ Analyzer
,))
198 $(eval
$(call BuildPlugin
,cache
,server
,CNAM and LNP memory caches
,))
199 $(eval
$(call BuildPlugin
,callcounters
,server
,Count Active Call Legs
,))
200 $(eval
$(call BuildPlugin
,callfork
,,Call Forker
,))
201 $(eval
$(call BuildPlugin
,callgen
,,Call Generator
,))
202 $(eval
$(call BuildPlugin
,ccongestion
,server
,Accept Status from Installed Engine Monitors
,))
203 $(eval
$(call BuildPlugin
,cdrbuild
,,Call Detail Record Builder
,))
204 $(eval
$(call BuildPlugin
,cdrcombine
,,Call Detail Records per call instead of per call leg
,))
205 $(eval
$(call BuildPlugin
,cdrfile
,,Call Detail Record to File
,))
206 $(eval
$(call BuildPlugin
,ciscosm
,server
,SS7 Support
,))
207 $(eval
$(call BuildPlugin
,clustering
,server
,Clustering Server Support
,))
208 $(eval
$(call BuildPlugin
,conference
,,Conference Room Mixer
,))
209 $(eval
$(call BuildPlugin
,cpuload
,server
,Monitor CPU load and Inform Yate
,))
210 $(eval
$(call BuildPlugin
,dbpbx
,server
,PBX IVR and Multi-routing from Database
,))
211 $(eval
$(call BuildPlugin
,dbwave
,server
,Wav Media for DB Storage
,+$(PKG_NAME
)-mod-wavefile
))
212 $(eval
$(call BuildPlugin
,dumbchan
,,Dummy Channel
,))
213 $(eval
$(call BuildPlugin
,enumroute
,,ENUM Routing
,))
214 $(eval
$(call BuildPlugin
,eventlogs
,server
,Write events and alarms to log files
,))
215 $(eval
$(call BuildPlugin
,extmodule
,,External Module Handler
,))
216 $(eval
$(call BuildPlugin
,faxchan
,,Spandsp Fax Channel
,+libspandsp
))
217 $(eval
$(call BuildPlugin
,filetransfer
,,File Transfer Driver
,))
218 $(eval
$(call BuildPlugin
,gvoice
,,Google Voice support
,))
219 $(eval
$(call BuildPlugin
,heartbeat
,server
,Linux-HA compatible heartbeat
,))
220 $(eval
$(call BuildPlugin
,ilbccodec
,,iLBC Codec
,))
221 $(eval
$(call BuildPlugin
,ilbcwebrtc
,,iLBC Codec from the WebRTC project
,))
222 $(eval
$(call BuildPlugin
,isaccodec
,,internet Speech Audio Codec
,))
223 $(eval
$(call BuildPlugin
,isupmangler
,sig
,ISUP parameter mangling in a STP
,))
224 $(eval
$(call BuildPlugin
,jabberclient
,client
,Jabber Client
,))
225 $(eval
$(call BuildPlugin
,jabberserver
,jabber
,Jabber Server
,))
226 $(eval
$(call BuildPlugin
,javascript
,,Routing using the embedded Javascript language
,))
227 $(eval
$(call BuildPlugin
,jbfeatures
,jabber
,Jabber Server Features
,))
228 $(eval
$(call BuildPlugin
,lateroute
,server
,Last Chance Routing
,))
229 $(eval
$(call BuildPlugin
,mgcpca
,server
,Media Gateway Control Protocol Agent
,))
230 $(eval
$(call BuildPlugin
,mgcpgw
,server
,Media Gateway Control Protocol Gateway
,))
231 $(eval
$(call BuildPlugin
,moh
,,On Hold
(music
) Generator
,))
232 $(eval
$(call BuildPlugin
,monitoring
,server
,Monitoring
/gathering Information
,))
233 $(eval
$(call BuildPlugin
,mrcpspeech
,server
,MRCP v2 Voice
/Tone Detector and Synthesizer
,))
234 $(eval
$(call BuildPlugin
,msgsniff
,,Sample Message Sniffer
,))
235 $(eval
$(call BuildPlugin
,mux
,,Data Multiplexor
,))
236 $(eval
$(call BuildPlugin
,mysqldb
,server
,MySQL Backend DB
,+libmysqlclient-r
))
237 $(eval
$(call BuildPlugin
,openssl
,,Encrypted transport
(OpenSSL
),+libopenssl
))
238 $(eval
$(call BuildPlugin
,osschan
,client
,OSS Sound Channel
,))
239 $(eval
$(call BuildPlugin
,park
,server
,Call Parking
,))
240 $(eval
$(call BuildPlugin
,pbx
,,PBX Message Handlers
,))
241 $(eval
$(call BuildPlugin
,pbxassist
,server
,Full featured PBX and IVR
,))
242 $(eval
$(call BuildPlugin
,pgsqldb
,server
,PostgrestSQL Backend DB
,+libpq
))
243 $(eval
$(call BuildPlugin
,presence
,server
,Presence
,))
244 $(eval
$(call BuildPlugin
,queues
,server
,Call Distribution and Queues from Database
,))
245 $(eval
$(call BuildPlugin
,queuesnotify
,server
,Notify when queued call status changes
,))
246 $(eval
$(call BuildPlugin
,regexroute
,,Regular Expression Based Routing
,))
247 $(eval
$(call BuildPlugin
,regfile
,server
,Registration based on users in file
,))
248 $(eval
$(call BuildPlugin
,register
,server
,Call Detail Record to a database
,))
249 $(eval
$(call BuildPlugin
,rmanager
,,Yate Remote Management
,))
250 $(eval
$(call BuildPlugin
,sigtransport
,server
,SIGTRAN
(SS7 over IP
) connection provider
,))
251 $(eval
$(call BuildPlugin
,sip_cnam_lnp
,sip
,Query CNAM and LNP databases using SIP INVITE
,))
252 $(eval
$(call BuildPlugin
,sipfeatures
,server
,SIP Features
(SUBSCRIBE
/NOTIFY
),))
253 $(eval
$(call BuildPlugin
,speexcodec
,,Speex Codec
,+libspeex
))
254 $(eval
$(call BuildPlugin
,subscription
,server
,Subcription handler and presence notifier
,))
255 $(eval
$(call BuildPlugin
,tdmcard
,server
,TDM Cards Signalling and Data Driver
,@BROKEN
)) # Missing TDM libraries
256 $(eval
$(call BuildPlugin
,tonedetect
,,Detectors for Various Tones
,))
257 $(eval
$(call BuildPlugin
,tonegen
,,Tones Generator
,))
258 $(eval
$(call BuildPlugin
,users
,server
,Users
,))
259 $(eval
$(call BuildPlugin
,wavefile
,,Wav file Record and Playback
,))
260 $(eval
$(call BuildPlugin
,wpcard
,server
,Wanpipe PRI cards Signalling and Data Driver
,@BROKEN
)) # Mising wanpipe and PRI libraries
261 $(eval
$(call BuildPlugin
,yiaxchan
,,IAX Channel
,))
262 $(eval
$(call BuildPlugin
,yjinglechan
,,Jingle Channel
,))
263 $(eval
$(call BuildPlugin
,yradius
,server
,RADIUS Client
,))
264 $(eval
$(call BuildPlugin
,yrtpchan
,,RTP Channel and Other Data Helper
,))
265 $(eval
$(call BuildPlugin
,ysigchan
,server
,SS7
/ISDN Protocols
- Yate Signalling Library
,))
266 $(eval
$(call BuildPlugin
,ysipchan
,,SIP Channel
,))
267 $(eval
$(call BuildPlugin
,ysnmpagent
,server
,SNMP Protocol Agent
,,/usr
/share
/yate
/data
/NULL-TEAM-MIB.txt
/usr
/share
/yate
/data
/snmp_mib.conf
/usr
/share
/yate
/data
/YATE-MIB.txt
))
268 $(eval
$(call BuildPlugin
,ysockschan
,,SOCKS Channel
,))
269 $(eval
$(call BuildPlugin
,ystunchan
,,STUN Support
,))
270 $(eval
$(call BuildPlugin
,zlibcompress
,,Zlib Compression
,+zlib
))