Added db_cassandra packaging
[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
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
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 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
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 openssl library
99 mod_list_stun=stun
100
101 # - modules depending on libval-threads libcrypto libsres libpthread
102 mod_list_dnssec=dnssec
103
104 # - modules depending on libsctp
105 mod_list_sctp=sctp
106
107 # - modules depending on openssl library
108 mod_list_autheph=auth_ephemeral
109
110 # - modules related to SIMPLE presence extensions
111 mod_list_presence=presence presence_conference presence_dialoginfo \
112                                            presence_mwi presence_profile presence_reginfo \
113                                            presence_xml \
114                                            pua pua_bla pua_dialoginfo pua_mi pua_reginfo \
115                                            pua_usrloc pua_xmpp \
116                                            rls xcap_client xcap_server
117
118
119 # - modules depending on lua library
120 mod_list_lua=app_lua
121
122 # - modules depending on perl library
123 mod_list_perldeps=app_perl db_perlvdb
124
125 # - modules depending on python library
126 mod_list_python=app_python
127
128 # - modules depending on geoip library
129 mod_list_geoip=geoip
130
131 # - modules depending on sqlite library
132 mod_list_sqlite=db_sqlite
133
134 # - modules depending on oracle library
135 mod_list_oracle=db_oracle
136
137 # - modules depending on json library
138 mod_list_json=json jsonrpc-c
139
140 # - modules depending on redis library
141 mod_list_redis=ndb_redis
142
143 # - modules depending on mono library
144 mod_list_mono=app_mono
145
146 # - modules related to IMS extensions
147 mod_list_ims=cdp cdp_avp dialog_ng ims_auth ims_isc ims_icscf ims_qos \
148                            ims_registrar_pcscf ims_registrar_scscf ims_usrloc_pcscf \
149                            ims_usrloc_scscf
150
151 # - modules depending on osp toolkit library
152 mod_list_osp=osp
153
154 # - modules depending on java library
155 mod_list_java=app_java
156
157 # - modules depending on iptables library
158 mod_list_iptrtpproxy=iptrtpproxy
159
160 # - all modules
161 mod_list_all=$(sort $(mod_list_basic) $(mod_list_extra) \
162                            $(mod_list_db) $(mod_list_dbuid) \
163                            $(mod_list_devel) $(mod_list_pcre) \
164                            $(mod_list_radius) $(mod_list_ldap) \
165                            $(mod_list_mysql) $(mod_list_postgres) \
166                            $(mod_list_unixodbc) $(mod_list_xmldeps) \
167                            $(mod_list_perldeps) $(mod_list_cpl) \
168                            $(mod_list_xmpp) $(mod_list_carrierroute) \
169                            $(mod_list_berkeley) $(mod_list_utils) \
170                            $(mod_list_purple) $(mod_list_memcached) \
171                            $(mod_list_tlsdeps) $(mod_list_websocket) \
172                            $(mod_list_snmpstats) $(mod_list_presence) \
173                            $(mod_list_lua) $(mod_list_python) \
174                            $(mod_list_geoip) $(mod_list_sqlite) \
175                            $(mod_list_json) $(mod_list_redis) \
176                            $(mod_list_mono) $(mod_list_ims) \
177                            $(mod_list_cassandra) $(mod_list_oracle) \
178                            $(mod_list_iptrtpproxy) $(mod_list_mi_xmlrpc) \
179                            $(mod_list_outbound) $(mod_list_osp) \
180                            $(mod_list_java) $(mod_list_stun) \
181                            $(mod_list_dnssec) $(mod_list_sctp) \
182                            $(mod_list_autheph))
183
184
185
186 ### --- Groups defined for source code compilation ###
187
188 # groups are sets of modules selected by compile target interest (should be
189 # built by combining lists)
190
191 # Modules in this group are the default compiled modules due to
192 # no external compile or link dependencies
193 module_group_default=$(mod_list_basic) $(mod_list_extra) \
194                                           $(mod_list_db) $(mod_list_dbuid) \
195                                           $(mod_list_devel)
196
197 # Modules in this group are the default compiled modules due to
198 # no internal/external compile or link dependencies
199 module_group_standard=$(mod_list_basic) $(mod_list_extra) \
200                                           $(mod_list_devel)
201
202 # Modules in this group are considered a standard part due to
203 # widespread usage, but they have dependencies that must be satisfied for 
204 # compilation (e.g., lcr, radius, presence, tls, ...).
205 module_group_common=$(mod_list_db) $(mod_list_dbuid) \
206                                         $(mod_list_pcre) $(mod_list_radius) \
207                                         $(mod_list_xmldeps) $(mod_list_presence) \
208                                         $(mod_list_tlsdeps)
209
210 # For db use (db modules, excluding drivers)
211 module_group_db=$(mod_list_db)
212
213 # For mysql
214 module_group_mysql_driver=$(mod_list_mysql)
215 module_group_mysql=$(module_group_mysql_driver) $(module_group_db)
216
217 # For postgress
218 module_group_postgres_driver=$(mod_list_postgres)
219 module_group_postgres=$(module_group_postgres_driver) $(module_group_db)
220
221 # For radius
222 module_group_radius=$(mod_list_radius)
223
224 # For presence
225 # kamailio modules
226 module_group_presence=$(mod_list_presence)
227
228 # For cassandra
229 module_group_cassandra_driver=$(mod_list_cassandra)
230 module_group_cassandra=$(module_group_cassandra_driver) $(module_group_db)
231
232 # For all modules not compiled by default
233 module_group_ignore= $(sort $(filter-out $(module_group_default), $(mod_list_all)))
234
235
236
237 ### --- Groups defined for pacKaging ###
238
239 # Standard modules in main pkg
240 module_group_kstandard=$(mod_list_basic) $(mod_list_extra) \
241                                           $(mod_list_db) $(mod_list_dbuid) \
242                                           $(mod_list_pcre)
243
244 # pkg mysql module
245 module_group_kmysql=$(mod_list_mysql)
246
247 # pkg postgress module
248 module_group_kpostgres=$(mod_list_postgres)
249
250 # pkg cpl module
251 module_group_kcpl=$(mod_list_cpl)
252
253 # pkg xml modules
254 module_group_kxml=$(mod_list_xmldeps)
255
256 # pkg mi_xmlrpc modules
257 module_group_kmi_xmlrpc=$(mod_list_mi_xmlrpc)
258
259 # pkg radius modules
260 module_group_kradius=$(mod_list_radius)
261
262 # pkg unixodbc module
263 module_group_kunixodbc=$(mod_list_unixodbc)
264
265 # pkg perl module
266 module_group_kperl=$(mod_list_perldeps)
267
268 # pkg snmpstats module
269 module_group_ksnmpstats=$(mod_list_snmpstats)
270
271 # pkg xmpp module
272 module_group_kxmpp=$(mod_list_xmpp)
273
274 # pkg carrierroute module
275 module_group_kcarrierroute=$(mod_list_carrierroute)
276
277 # pkg berkeley module
278 module_group_kberkeley=$(mod_list_berkeley)
279
280 # pkg ldap modules
281 module_group_kldap=$(mod_list_ldap)
282
283 # pkg utils module
284 module_group_kutils=$(mod_list_utils)
285
286 # pkg purple module
287 module_group_kpurple=$(mod_list_purple)
288
289 # pkg memcached module
290 module_group_kmemcached=$(mod_list_memcached)
291
292 # pkg tls module
293 module_group_ktls=$(mod_list_tlsdeps)
294
295 # pkg websocket module
296 module_group_kwebsocket=$(mod_list_websocket)
297
298 # pkg presence modules
299 module_group_kpresence=$(mod_list_presence)
300
301 # pkg lua module
302 module_group_klua=$(mod_list_lua)
303
304 # pkg python module
305 module_group_kpython=$(mod_list_python)
306
307 # pkg geoip module
308 module_group_kgeoip=$(mod_list_geoip)
309
310 # pkg sqlite module
311 module_group_ksqlite=$(mod_list_sqlite)
312
313 # K json modules
314 module_group_kjson=$(mod_list_json)
315
316 # pkg redis module
317 module_group_kredis=$(mod_list_redis)
318
319 # pkg mono module
320 module_group_kmono=$(mod_list_mono)
321
322 # pkg IMS modules
323 module_group_kims=$(mod_list_ims)
324
325 # pkg outbound module
326 module_group_koutbound=$(mod_list_outbound)
327
328 # pkg java module
329 module_group_kjava=$(mod_list_java)
330
331 # pkg stun module
332 module_group_kstun=$(mod_list_stun)
333
334 # pkg dnssec module
335 module_group_kdnssec=$(mod_list_dnssec)
336
337 # pkg sctp module
338 module_group_ksctp=$(mod_list_sctp)
339
340 # pkg auth_ephemeral module
341 module_group_kautheph=$(mod_list_autheph)
342
343 # pkg db_cassandra module
344 module_group_kcassandra=$(mod_list_cassandra)
345
346 # list of static modules
347 #
348 static_modules:=
349