support vhost in connection
[sip-router] / Makefile.groups
1 # Module groups definitions
2 #
3
4 # lists are sets of modules that don't include modules that are in other lists
5 # - break the lists as needed in order to use them to build desired groups
6 #   and packages
7 #
8
9
10 # - basic used modules, with no extra dependency (widespread usage)
11 mod_list_basic=async auth benchmark blst cfg_rpc cfgutils corex counters \
12                                    ctl debugger diversion enum exec ipops kex mangler maxfwd \
13                                    mediaproxy mi_datagram mi_fifo mi_rpc mqueue \
14                                    nat_traversal nathelper path pike pv ratelimit rr rtimer \
15                                    rtpproxy sanity sdpops siputils sl statistics textops \
16                                    textopsx tm tmx topoh xlog rtpengine stun sipt
17
18 # - extra used modules, with no extra dependency
19 mod_list_extra=avp auth_diameter call_control cnxcc dmq domainpolicy msrp pdb \
20                              qos sca seas sms sst timer tmrec uac_redirect xhttp \
21                                  xhttp_rpc xprint jsonrpc-s nosip
22
23 # - common modules depending on database
24 mod_list_db=acc alias_db auth_db avpops cfg_db db_text db_flatstore \
25                           db_cluster dialog dispatcher domain drouting group \
26                           htable imc matrix mohqueue msilo mtree p_usrloc pdt permissions \
27                           pipelimit prefix_route registrar sipcapture siptrace speeddial \
28                           sqlops uac uri_db userblacklist usrloc
29
30
31 # - common modules depending on database, using UID db schema
32 mod_list_dbuid=db2_ops uid_auth_db uid_avp_db uid_domain uid_gflags \
33                                  uid_uri_db
34
35 # - modules for devel purposes
36 mod_list_devel=malloc_test print print_lib
37
38 # - modules depending on pcre3 library
39 mod_list_pcre=dialplan lcr regex
40
41 # - modules depending on radius client library
42 mod_list_radius=acc_radius auth_radius misc_radius peering
43
44 # - modules depending on ldap client library
45 mod_list_ldap=db2_ldap h350 ldap
46
47 # - modules depending on mysql client library
48 mod_list_mysql=db_mysql
49
50 # - modules depending on postgres client library
51 mod_list_postgres=db_postgres
52
53 # - modules depending on unixodbc library
54 mod_list_unixodbc=db_unixodbc
55
56 # - modules depending on mysql cassandra library
57 mod_list_cassandra=db_cassandra ndb_cassandra
58
59 # - modules depending on xml2 library
60 mod_list_cpl=cpl-c
61
62 # - modules depending on xml2 library
63 mod_list_xmldeps=xhttp_pi xmlrpc xmlops
64
65 # - modules depending on xml c rpc library
66 mod_list_mi_xmlrpc=mi_xmlrpc
67
68 # - modules depending on net-snmp library
69 mod_list_snmpstats=snmpstats
70
71 # - modules depending on expat library
72 mod_list_xmpp=xmpp
73
74 # - modules depending on confuse library
75 mod_list_carrierroute=carrierroute
76
77 # - modules depending on bdb (db4) library
78 mod_list_berkeley=db_berkeley
79
80 # - modules depending on curl library
81 mod_list_utils=utils
82
83 # - modules depending on purple library
84 mod_list_purple=purple
85
86 # - modules depending on memcache library
87 mod_list_memcached=memcached
88
89 # - modules depending on openssl library
90 mod_list_tlsdeps=auth_identity tls
91
92 # - modules depending on openssl library
93 mod_list_outbound=outbound
94
95 # - modules depending on openssl and unistring library
96 mod_list_websocket=websocket
97
98 # - modules depending on libval-threads libcrypto libsres libpthread
99 mod_list_dnssec=dnssec
100
101 # - modules depending on libsctp
102 mod_list_sctp=sctp
103
104 # - modules depending on openssl library
105 mod_list_autheph=auth_ephemeral
106
107 # - modules related to SIMPLE presence extensions
108 mod_list_presence=presence presence_conference presence_dialoginfo \
109                                            presence_mwi presence_profile presence_reginfo \
110                                            presence_xml \
111                                            pua pua_bla pua_dialoginfo pua_mi pua_reginfo \
112                                            pua_usrloc pua_xmpp \
113                                            rls xcap_client xcap_server
114
115
116 # - modules depending on lua library
117 mod_list_lua=app_lua
118
119 # - modules depending on perl library
120 mod_list_perldeps=app_perl db_perlvdb
121
122 # - modules depending on python library
123 mod_list_python=app_python
124
125 # - modules depending on geoip library
126 mod_list_geoip=geoip
127
128 # - modules depending on sqlite library
129 mod_list_sqlite=db_sqlite
130
131 # - modules depending on oracle library
132 mod_list_oracle=db_oracle
133
134 # - modules depending on json library
135 mod_list_json=json jsonrpc-c
136
137 # - modules depending on redis library
138 mod_list_redis=ndb_redis
139
140 # - modules depending on mono library
141 mod_list_mono=app_mono
142
143 # - modules related to IMS extensions
144 mod_list_ims=cdp cdp_avp dialog_ng ims_auth ims_isc ims_icscf ims_qos \
145                            ims_registrar_pcscf ims_registrar_scscf ims_usrloc_pcscf \
146                            ims_usrloc_scscf ims_charging
147
148 # - modules depending on osp toolkit library
149 mod_list_osp=osp
150
151 # - modules depending on java library
152 mod_list_java=app_java
153
154 # - modules depending on iptables library
155 mod_list_iptrtpproxy=iptrtpproxy
156
157 # - modules depending on gzip library
158 mod_list_gzcompress=gzcompress
159
160 # - modules depending on uuid library
161 mod_list_uuid=uuid
162
163 # - modules depending on ev library
164 mod_list_ev=evapi
165
166 # - modules depending on kazoo/rabitmq
167 mod_list_kazoo=kazoo
168
169 # - modules depending on mongodb
170 mod_list_mongodb=db_mongodb ndb_mongodb
171
172 # - all modules
173 mod_list_all=$(sort $(mod_list_basic) $(mod_list_extra) \
174                            $(mod_list_db) $(mod_list_dbuid) \
175                            $(mod_list_devel) $(mod_list_pcre) \
176                            $(mod_list_radius) $(mod_list_ldap) \
177                            $(mod_list_mysql) $(mod_list_postgres) \
178                            $(mod_list_unixodbc) $(mod_list_xmldeps) \
179                            $(mod_list_perldeps) $(mod_list_cpl) \
180                            $(mod_list_xmpp) $(mod_list_carrierroute) \
181                            $(mod_list_berkeley) $(mod_list_utils) \
182                            $(mod_list_purple) $(mod_list_memcached) \
183                            $(mod_list_tlsdeps) $(mod_list_websocket) \
184                            $(mod_list_snmpstats) $(mod_list_presence) \
185                            $(mod_list_lua) $(mod_list_python) \
186                            $(mod_list_geoip) $(mod_list_sqlite) \
187                            $(mod_list_json) $(mod_list_redis) \
188                            $(mod_list_mono) $(mod_list_ims) \
189                            $(mod_list_cassandra) $(mod_list_oracle) \
190                            $(mod_list_iptrtpproxy) $(mod_list_mi_xmlrpc) \
191                            $(mod_list_outbound) $(mod_list_osp) \
192                            $(mod_list_java) $(mod_list_dnssec) \
193                            $(mod_list_sctp) $(mod_list_autheph) \
194                            $(mod_list_gzcompress) $(mod_list_uuid) \
195                            $(mod_list_ev) $(mod_list_kazoo) \
196                            $(mod_list_mongodb))
197
198
199
200 ### --- Groups defined for source code compilation ###
201
202 # groups are sets of modules selected by compile target interest (should be
203 # built by combining lists)
204
205 # Modules in this group are the default compiled modules due to
206 # no external compile or link dependencies
207 module_group_default=$(mod_list_basic) $(mod_list_extra) \
208                                           $(mod_list_db) $(mod_list_dbuid) \
209                                           $(mod_list_devel)
210
211 # Modules in this group are the default compiled modules due to
212 # no internal/external compile or link dependencies
213 module_group_standard=$(mod_list_basic) $(mod_list_extra) \
214                                           $(mod_list_devel)
215
216 # Modules in this group are considered a standard part due to
217 # widespread usage, but they have dependencies that must be satisfied for 
218 # compilation (e.g., lcr, radius, presence, tls, ...).
219 module_group_common=$(mod_list_db) $(mod_list_dbuid) \
220                                         $(mod_list_pcre) $(mod_list_radius) \
221                                         $(mod_list_xmldeps) $(mod_list_presence) \
222                                         $(mod_list_tlsdeps)
223
224 # For db use (db modules, excluding drivers)
225 module_group_db=$(mod_list_db)
226
227 # For mysql
228 module_group_mysql_driver=$(mod_list_mysql)
229 module_group_mysql=$(module_group_mysql_driver) $(module_group_db)
230
231 # For postgress
232 module_group_postgres_driver=$(mod_list_postgres)
233 module_group_postgres=$(module_group_postgres_driver) $(module_group_db)
234
235 # For radius
236 module_group_radius=$(mod_list_radius)
237
238 # For presence
239 # kamailio modules
240 module_group_presence=$(mod_list_presence)
241
242 # For cassandra
243 module_group_cassandra_driver=$(mod_list_cassandra)
244 module_group_cassandra=$(module_group_cassandra_driver) $(module_group_db)
245
246 # For all modules not compiled by default
247 module_group_ignore= $(sort $(filter-out $(module_group_default), $(mod_list_all)))
248
249
250
251 ### --- Groups defined for pacKaging ###
252
253 # Standard modules in main pkg
254 module_group_kstandard=$(mod_list_basic) $(mod_list_extra) \
255                                           $(mod_list_db) $(mod_list_dbuid) \
256                                           $(mod_list_pcre)
257
258 # pkg mysql module
259 module_group_kmysql=$(mod_list_mysql)
260
261 # pkg postgress module
262 module_group_kpostgres=$(mod_list_postgres)
263
264 # pkg cpl module
265 module_group_kcpl=$(mod_list_cpl)
266
267 # pkg xml modules
268 module_group_kxml=$(mod_list_xmldeps)
269
270 # pkg mi_xmlrpc modules
271 module_group_kmi_xmlrpc=$(mod_list_mi_xmlrpc)
272
273 # pkg radius modules
274 module_group_kradius=$(mod_list_radius)
275
276 # pkg unixodbc module
277 module_group_kunixodbc=$(mod_list_unixodbc)
278
279 # pkg perl module
280 module_group_kperl=$(mod_list_perldeps)
281
282 # pkg snmpstats module
283 module_group_ksnmpstats=$(mod_list_snmpstats)
284
285 # pkg xmpp module
286 module_group_kxmpp=$(mod_list_xmpp)
287
288 # pkg carrierroute module
289 module_group_kcarrierroute=$(mod_list_carrierroute)
290
291 # pkg berkeley module
292 module_group_kberkeley=$(mod_list_berkeley)
293
294 # pkg ldap modules
295 module_group_kldap=$(mod_list_ldap)
296
297 # pkg utils module
298 module_group_kutils=$(mod_list_utils)
299
300 # pkg purple module
301 module_group_kpurple=$(mod_list_purple)
302
303 # pkg memcached module
304 module_group_kmemcached=$(mod_list_memcached)
305
306 # pkg tls module
307 module_group_ktls=$(mod_list_tlsdeps)
308
309 # pkg websocket module
310 module_group_kwebsocket=$(mod_list_websocket)
311
312 # pkg presence modules
313 module_group_kpresence=$(mod_list_presence)
314
315 # pkg lua module
316 module_group_klua=$(mod_list_lua)
317
318 # pkg python module
319 module_group_kpython=$(mod_list_python)
320
321 # pkg geoip module
322 module_group_kgeoip=$(mod_list_geoip)
323
324 # pkg sqlite module
325 module_group_ksqlite=$(mod_list_sqlite)
326
327 # K json modules
328 module_group_kjson=$(mod_list_json)
329
330 # pkg redis module
331 module_group_kredis=$(mod_list_redis)
332
333 # pkg mono module
334 module_group_kmono=$(mod_list_mono)
335
336 # pkg IMS modules
337 module_group_kims=$(mod_list_ims)
338
339 # pkg outbound module
340 module_group_koutbound=$(mod_list_outbound)
341
342 # pkg java module
343 module_group_kjava=$(mod_list_java)
344
345 # pkg dnssec module
346 module_group_kdnssec=$(mod_list_dnssec)
347
348 # pkg sctp module
349 module_group_ksctp=$(mod_list_sctp)
350
351 # pkg auth_ephemeral module
352 module_group_kautheph=$(mod_list_autheph)
353
354 # pkg gzcompress module
355 module_group_kgzcompress=$(mod_list_gzcompress)
356
357 # pkg uuid module
358 module_group_kuuid=$(mod_list_uuid)
359
360 # pkg libev modules
361 module_group_kev=$(mod_list_ev)
362
363 # pkg kazoo module
364 module_group_kkazoo=$(mod_list_kazoo)
365
366 # pkg mongodb modules
367 module_group_kmongodb=$(mod_list_mongodb)
368
369 # list of static modules
370 #
371 static_modules:=
372