# Kamailio build system # Module groups definitions # # lists are sets of modules that don't include modules that are in other lists # - break the lists as needed in order to use them to build desired groups # and packages # # - basic used modules, with no extra dependency (widespread usage) mod_list_basic=async auth benchmark blst cfg_rpc cfgutils corex counters \ ctl debugger diversion enum exec ipops kex mangler maxfwd \ mediaproxy mqueue \ nat_traversal nathelper path pike pv ratelimit rr rtimer \ rtpproxy sanity sdpops siputils sl statistics textops \ textopsx tm tmx topoh xlog rtpengine stun sipt tcpops \ auth_xkeys smsops tsilo cfgt statsc topos sipdump # - extra used modules, with no extra dependency mod_list_extra=avp auth_diameter call_control call_obj dmq domainpolicy msrp \ carrierroute pdb qos sca seas sms sst timer tmrec uac_redirect \ xhttp xhttp_rpc xprint jsonrpcs nosip dmq_usrloc statsd rtjson \ log_custom keepalive ss7ops app_sqlang acc_diameter evrexec \ sipjson xhttp_prom # - common modules depending on database mod_list_db=acc alias_db auth_db avpops cfg_db db_text db_flatstore \ db_cluster dialog dispatcher domain drouting group \ htable imc matrix mohqueue msilo mtree p_usrloc pdt permissions \ pipelimit prefix_route registrar sipcapture siptrace speeddial \ sqlops uac uri_db userblacklist usrloc secfilter # - common modules depending on database, using UID db schema mod_list_dbuid=db2_ops uid_auth_db uid_avp_db uid_domain uid_gflags \ uid_uri_db # - modules for devel purposes mod_list_devel=malloc_test print print_lib # - modules depending on pcre3 library mod_list_pcre=dialplan lcr regex # - modules depending on radius client library mod_list_radius=acc_radius auth_radius misc_radius peering # - modules depending on ldap client library mod_list_ldap=db2_ldap h350 ldap # - modules depending on mysql client library mod_list_mysql=db_mysql # - modules depending on postgres client library mod_list_postgres=db_postgres # - modules depending on unixodbc library mod_list_unixodbc=db_unixodbc # - modules depending on mysql cassandra library mod_list_cassandra=db_cassandra ndb_cassandra # - modules depending on xml2 library mod_list_cpl=cplc # - modules depending on xml2 library mod_list_xmldeps=xhttp_pi xmlrpc xmlops # - modules depending on net-snmp library mod_list_snmpstats=snmpstats # - modules depending on expat library mod_list_xmpp=xmpp # - modules depending on bdb (db4) library mod_list_berkeley=db_berkeley # - modules depending on curl library mod_list_utils=utils http_client lost # - modules depending on curl and libevent2 library mod_list_http_async=http_async_client # - modules depending on memcache library mod_list_memcached=memcached # - modules depending on openssl library mod_list_tlsdeps=crypto tls # - modules depending on openssl (+curl) library mod_list_tlsdeps_curl=auth_identity # - modules depending on openssl library mod_list_outbound=outbound # - modules depending on openssl and unistring library mod_list_websocket=websocket # - modules depending on libval-threads libcrypto libsres libpthread mod_list_dnssec=dnssec # - modules depending on libsctp mod_list_sctp=sctp # - modules depending on openssl library mod_list_autheph=auth_ephemeral # - modules related to SIMPLE presence extensions mod_list_presence=presence presence_conference presence_dialoginfo \ presence_mwi presence_profile presence_reginfo \ presence_xml \ pua pua_bla pua_dialoginfo pua_reginfo \ pua_rpc pua_usrloc pua_xmpp \ rls xcap_client xcap_server # - modules depending on lua library mod_list_lua=app_lua app_lua_sr # - modules depending on perl library mod_list_perldeps=app_perl db_perlvdb # - modules depending on python library mod_list_python=app_python # - modules depending on python3 library mod_list_python3=app_python3 # - modules depending on libm (math library - standard system library) mod_list_jsdt=app_jsdt # - modules depending on ruby library mod_list_ruby=app_ruby # - modules depending on geoip library mod_list_geoip=geoip # - modules depending on new geoip library mod_list_geoip2=geoip2 # - modules depending on sqlite library mod_list_sqlite=db_sqlite # - modules depending on oracle library mod_list_oracle=db_oracle # - modules depending on json library mod_list_json=json pua_json # - modules depending on json (+libevent) library mod_list_json_event=jsonrpcc # - modules depending on jansson library mod_list_jansson=jansson acc_json # - modules depending on jansson (+libevent) library mod_list_jansson_event=janssonrpcc # - modules depending on redis library mod_list_redis=db_redis ndb_redis topos_redis # - modules depending on mono library mod_list_mono=app_mono # - modules related to IMS extensions mod_list_ims=cdp cdp_avp ims_dialog ims_auth ims_isc ims_icscf ims_qos \ ims_registrar_pcscf ims_registrar_scscf ims_usrloc_pcscf \ ims_usrloc_scscf ims_charging ims_ocs ims_diameter_server \ ims_ipsec_pcscf # - modules depending on osp toolkit library mod_list_osp=osp # - modules depending on java library mod_list_java=app_java # - modules depending on gzip library mod_list_gzcompress=gzcompress # - modules depending on uuid library mod_list_uuid=uuid # - modules depending on ev library mod_list_ev=evapi # - modules depending on kazoo/rabbitmq mod_list_kazoo=kazoo # - modules depending on mongodb mod_list_mongodb=db_mongodb ndb_mongodb # - modules depending on redis and event library mod_list_cnxcc=cnxcc # - modules depending on erlang library mod_list_erlang=erlang # - modules depending on systemd library mod_list_systemd=log_systemd # - modules depending on libnsq (+libev libevbuffsock liblcurl libjson-c) library mod_list_nsq=nsq # - modules depending on librabbitmq library mod_list_rabbitmq=rabbitmq # - modules depending on libphonenumber library mod_list_phonenum=phonenum # - modules depending on oRTP and mediastreamer2 libraries mod_list_rtp_media_server=rtp_media_server # - all modules mod_list_all=$(sort $(mod_list_basic) $(mod_list_extra) \ $(mod_list_db) $(mod_list_dbuid) \ $(mod_list_devel) $(mod_list_pcre) \ $(mod_list_radius) $(mod_list_ldap) \ $(mod_list_mysql) $(mod_list_postgres) \ $(mod_list_unixodbc) $(mod_list_xmldeps) \ $(mod_list_perldeps) $(mod_list_cpl) \ $(mod_list_xmpp) \ $(mod_list_berkeley) $(mod_list_utils) \ $(mod_list_memcached) \ $(mod_list_tlsdeps) $(mod_list_tlsdeps_curl) \ $(mod_list_websocket) \ $(mod_list_snmpstats) $(mod_list_presence) \ $(mod_list_lua) $(mod_list_python) \ $(mod_list_python3) $(mod_list_ruby) \ $(mod_list_geoip) $(mod_list_sqlite) \ $(mod_list_json) $(mod_list_json_event) \ $(mod_list_redis) \ $(mod_list_mono) $(mod_list_ims) \ $(mod_list_cassandra) $(mod_list_oracle) \ $(mod_list_outbound) $(mod_list_osp) \ $(mod_list_java) $(mod_list_dnssec) \ $(mod_list_sctp) $(mod_list_autheph) \ $(mod_list_gzcompress) $(mod_list_uuid) \ $(mod_list_ev) $(mod_list_kazoo) \ $(mod_list_mongodb) $(mod_list_cnxcc) \ $(mod_list_jansson) $(mod_list_jansson_event) \ $(mod_list_geoip2) \ $(mod_list_erlang) $(mod_list_systemd) \ $(mod_list_http_async) $(mod_list_nsq) \ $(mod_list_rabbitmq) $(mod_list_jsdt)) \ $(mod_list_phonenum) \ $(mod_list_rtp_media_server) ### --- Groups defined for source code compilation ### # groups are sets of modules selected by compile target interest (should be # built by combining lists) # Modules in this group are the default compiled modules due to # no external compile or link dependencies module_group_default=$(mod_list_basic) $(mod_list_extra) \ $(mod_list_db) $(mod_list_dbuid) \ $(mod_list_devel) $(mod_list_jsdt) # Modules in this group are the default compiled modules due to # no internal/external compile or link dependencies module_group_standard=$(mod_list_basic) $(mod_list_extra) \ $(mod_list_devel) $(mod_list_jsdt) # Modules in this group are considered a standard part due to # widespread usage, but they have dependencies that must be satisfied for # compilation (e.g., lcr, radius, presence, tls, ...). module_group_common=$(mod_list_db) $(mod_list_dbuid) \ $(mod_list_pcre) $(mod_list_radius) \ $(mod_list_xmldeps) $(mod_list_presence) \ $(mod_list_tlsdeps) $(mod_list_tlsdeps_curl) # For db use (db modules, excluding drivers) module_group_db=$(mod_list_db) # For mysql module_group_mysql_driver=$(mod_list_mysql) module_group_mysql=$(module_group_mysql_driver) $(module_group_db) # For postgress module_group_postgres_driver=$(mod_list_postgres) module_group_postgres=$(module_group_postgres_driver) $(module_group_db) # For radius module_group_radius=$(mod_list_radius) # For presence # kamailio modules module_group_presence=$(mod_list_presence) # For cassandra module_group_cassandra_driver=$(mod_list_cassandra) module_group_cassandra=$(module_group_cassandra_driver) $(module_group_db) # For all modules not compiled by default module_group_ignore= $(sort $(filter-out $(module_group_default), $(mod_list_all))) ### --- Groups defined for pacKaging ### # Standard modules in main pkg module_group_kstandard=$(mod_list_basic) $(mod_list_extra) \ $(mod_list_db) $(mod_list_dbuid) \ $(mod_list_pcre) $(mod_list_jsdt) # Standard modules without any dependencies (such as pcre) module_group_kmini=$(mod_list_basic) $(mod_list_extra) \ $(mod_list_db) $(mod_list_dbuid) \ $(mod_list_jsdt) # pkg pcre module module_group_kpcre=$(mod_list_pcre) # pkg mysql module module_group_kmysql=$(mod_list_mysql) # pkg postgress module module_group_kpostgres=$(mod_list_postgres) # pkg cpl module module_group_kcpl=$(mod_list_cpl) # pkg xml modules module_group_kxml=$(mod_list_xmldeps) # pkg radius modules module_group_kradius=$(mod_list_radius) # pkg unixodbc module module_group_kunixodbc=$(mod_list_unixodbc) # pkg perl module module_group_kperl=$(mod_list_perldeps) # pkg snmpstats module module_group_ksnmpstats=$(mod_list_snmpstats) # pkg xmpp module module_group_kxmpp=$(mod_list_xmpp) # pkg berkeley module module_group_kberkeley=$(mod_list_berkeley) # pkg ldap modules module_group_kldap=$(mod_list_ldap) # pkg utils module module_group_kutils=$(mod_list_utils) # pkg https_async module module_group_khttp_async=$(mod_list_http_async) # pkg memcached module module_group_kmemcached=$(mod_list_memcached) # pkg tls module module_group_ktls_basic=$(mod_list_tlsdeps) # pkg tls module with curl module_group_ktls=$(mod_list_tlsdeps) $(mod_list_tlsdeps_curl) # pkg websocket module module_group_kwebsocket=$(mod_list_websocket) # pkg presence modules module_group_kpresence=$(mod_list_presence) # pkg lua module module_group_klua=$(mod_list_lua) # pkg python module module_group_kpython=$(mod_list_python) # pkg python3 module module_group_kpython3=$(mod_list_python3) # pkg ruby module module_group_kruby=$(mod_list_ruby) # pkg geoip module module_group_kgeoip=$(mod_list_geoip) # pkg geoip2 module module_group_kgeoip2=$(mod_list_geoip2) # pkg sqlite module module_group_ksqlite=$(mod_list_sqlite) # K json modules module_group_kjson_basic=$(mod_list_json) # K json modules with libevent module_group_kjson=$(mod_list_json) $(mod_list_json_event) # K jansson modules module_group_kjansson_basic=$(mod_list_jansson) # K jansson modules with libevent module_group_kjansson=$(mod_list_jansson) $(mod_list_jansson_event) # pkg redis module module_group_kredis=$(mod_list_redis) # pkg mono module module_group_kmono=$(mod_list_mono) # pkg IMS modules module_group_kims=$(mod_list_ims) # pkg outbound module module_group_koutbound=$(mod_list_outbound) # pkg java module module_group_kjava=$(mod_list_java) # pkg dnssec module module_group_kdnssec=$(mod_list_dnssec) # pkg sctp module module_group_ksctp=$(mod_list_sctp) # pkg auth_ephemeral module module_group_kautheph=$(mod_list_autheph) # pkg gzcompress module module_group_kgzcompress=$(mod_list_gzcompress) # pkg uuid module module_group_kuuid=$(mod_list_uuid) # pkg libev modules module_group_kev=$(mod_list_ev) # pkg kazoo module module_group_kkazoo=$(mod_list_kazoo) # pkg mongodb modules module_group_kmongodb=$(mod_list_mongodb) # pkg cnxcc module module_group_kcnxcc=$(mod_list_cnxcc) # pkg erlang module module_group_kerlang=$(mod_list_erlang) # pkg systemd module module_group_ksystemd=$(mod_list_systemd) # K nsq modules module_group_knsq=$(mod_list_nsq) # K rabbitmq modules module_group_krabbitmq=$(mod_list_rabbitmq) # K phonenumber modules module_group_kphonenum=$(mod_list_phonenum) # K rtp_media_server modules module_group_krtp_media_server=$(mod_list_rtp_media_server) # list of static modules # static_modules:=