mirror of https://github.com/sipwise/kamailio.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
797 lines
18 KiB
797 lines
18 KiB
# 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)
|
|
set(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
|
|
topos_htable
|
|
sipdump
|
|
pv_headers
|
|
kemix)
|
|
|
|
# * extra used modules, with no extra dependency
|
|
set(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
|
|
acc_diameter
|
|
evrexec
|
|
file_out
|
|
sipjson
|
|
lrkproxy
|
|
math
|
|
posops
|
|
xhttp_prom
|
|
dlgs
|
|
sworker
|
|
influxdbc)
|
|
|
|
# * common modules depending on database
|
|
set(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
|
|
userblocklist
|
|
usrloc
|
|
secfilter)
|
|
|
|
# * common modules depending on database, using UID db schema
|
|
set(MOD_LIST_DBUID db2_ops uid_auth_db uid_avp_db uid_domain uid_gflags
|
|
uid_uri_db)
|
|
|
|
# * modules for devel purposes
|
|
set(MOD_LIST_DEVEL misctest)
|
|
|
|
# * modules depending on pcre3 library
|
|
set(MOD_LIST_PCRE dialplan lcr regex)
|
|
|
|
# * modules depending on radius client library
|
|
set(MOD_LIST_RADIUS acc_radius auth_radius misc_radius peering)
|
|
|
|
# * modules depending on ldap client library
|
|
set(MOD_LIST_LDAP db2_ldap h350 ldap)
|
|
|
|
# * modules depending on mysql client library
|
|
set(MOD_LIST_MYSQL db_mysql)
|
|
|
|
# * modules depending on postgres client library
|
|
set(MOD_LIST_POSTGRES db_postgres)
|
|
|
|
# * modules depending on unixodbc library
|
|
set(MOD_LIST_UNIXODBC db_unixodbc)
|
|
|
|
# * modules depending on xml2 library
|
|
set(MOD_LIST_CPL cplc)
|
|
|
|
# * modules depending on xml2 library
|
|
set(MOD_LIST_XMLDEPS xhttp_pi xmlrpc xmlops)
|
|
|
|
# * modules depending on net-snmp library
|
|
set(MOD_LIST_SNMPSTATS snmpstats)
|
|
|
|
# * modules depending on expat library
|
|
set(MOD_LIST_XMPP xmpp)
|
|
|
|
# * modules depending on bdb (db4) library
|
|
set(MOD_LIST_BERKELEY db_berkeley)
|
|
|
|
# * modules depending on curl library
|
|
set(MOD_LIST_UTILS utils http_client lost slack)
|
|
|
|
# * modules depending on curl and libevent2 library
|
|
set(MOD_LIST_HTTP_ASYNC http_async_client)
|
|
|
|
# * modules depending on memcache library
|
|
set(MOD_LIST_MEMCACHED memcached)
|
|
|
|
# * modules depending on openssl library
|
|
set(MOD_LIST_TLSDEPS crypto tls)
|
|
|
|
# * modules depending on static openssl library
|
|
set(MOD_LIST_TLSA tlsa)
|
|
|
|
# * modules depending on static wolfssl library
|
|
set(MOD_LIST_TLS_WOLFSSL tls_wolfssl)
|
|
|
|
# * modules depending on openssl library
|
|
set(MOD_LIST_OUTBOUND outbound)
|
|
|
|
# * modules depending on openssl and unistring library
|
|
set(MOD_LIST_WEBSOCKET websocket)
|
|
|
|
# * modules depending on libval-threads libcrypto libsres libpthread
|
|
set(MOD_LIST_DNSSEC dnssec)
|
|
|
|
# * modules depending on libsctp
|
|
set(MOD_LIST_SCTP sctp)
|
|
|
|
# * modules depending on openssl library
|
|
set(MOD_LIST_AUTHEPH auth_ephemeral)
|
|
|
|
# * modules related to SIMPLE presence extensions
|
|
set(MOD_LIST_PRESENCE
|
|
presence
|
|
presence_conference
|
|
presence_dfks
|
|
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
|
|
set(MOD_LIST_LUA app_lua)
|
|
|
|
# * modules depending on perl library
|
|
set(MOD_LIST_PERLDEPS app_perl db_perlvdb)
|
|
|
|
# * modules depending on python library
|
|
set(MOD_LIST_PYTHON app_python)
|
|
|
|
# * modules depending on python3 library
|
|
set(MOD_LIST_PYTHON3 app_python3 app_python3s)
|
|
|
|
# * modules depending on libm (math library - standard system library)
|
|
set(MOD_LIST_JSDT app_jsdt)
|
|
|
|
# * modules depending on ruby library
|
|
set(MOD_LIST_RUBY app_ruby app_ruby_proc)
|
|
|
|
# * modules depending on geoip library
|
|
set(MOD_LIST_GEOIP geoip)
|
|
|
|
# * modules depending on new geoip library
|
|
set(MOD_LIST_GEOIP2 geoip2)
|
|
|
|
# * modules depending on sqlite library
|
|
set(MOD_LIST_SQLITE db_sqlite)
|
|
|
|
# * modules depending on oracle library
|
|
set(MOD_LIST_ORACLE db_oracle)
|
|
|
|
# * modules depending on json library
|
|
set(MOD_LIST_JSON json pua_json)
|
|
|
|
# * modules depending on json (+libevent) library
|
|
set(MOD_LIST_JSON_EVENT jsonrpcc)
|
|
|
|
# * modules depending on jansson library
|
|
set(MOD_LIST_JANSSON jansson acc_json)
|
|
|
|
# * modules depending on jansson (+libevent) library
|
|
set(MOD_LIST_JANSSON_EVENT janssonrpcc)
|
|
|
|
# * modules depending on redis library
|
|
set(MOD_LIST_REDIS db_redis ndb_redis topos_redis)
|
|
|
|
# * modules related to IMS extensions
|
|
set(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 java library
|
|
set(MOD_LIST_JAVA app_java)
|
|
|
|
# * modules depending on gzip library
|
|
set(MOD_LIST_GZCOMPRESS gzcompress)
|
|
|
|
# * modules depending on uuid library
|
|
set(MOD_LIST_UUID uuid)
|
|
|
|
# * modules depending on ev library
|
|
set(MOD_LIST_EV evapi)
|
|
|
|
# * modules depending on libjwt library
|
|
set(MOD_LIST_JWT jwt)
|
|
|
|
# * modules depending on libwebsockets library
|
|
set(MOD_LIST_LWSC lwsc)
|
|
|
|
# * modules depending on libstirshaken library
|
|
set(MOD_LIST_STIRSHAKEN stirshaken)
|
|
|
|
# * modules depending on kazoo/rabbitmq
|
|
set(MOD_LIST_KAZOO kazoo)
|
|
|
|
# * modules depending on mongodb
|
|
set(MOD_LIST_MONGODB db_mongodb ndb_mongodb)
|
|
|
|
# * modules depending on redis and event library
|
|
set(MOD_LIST_CNXCC cnxcc)
|
|
|
|
# * modules depending on erlang library
|
|
set(MOD_LIST_ERLANG erlang)
|
|
|
|
# * modules depending on systemd library
|
|
set(MOD_LIST_SYSTEMD log_systemd systemdops)
|
|
|
|
# * modules depending on libnsq (+libev libevbuffsock libcurl libjson-c) library
|
|
set(MOD_LIST_NSQ nsq)
|
|
|
|
# * modules depending on librabbitmq library
|
|
set(MOD_LIST_RABBITMQ rabbitmq)
|
|
|
|
# * modules depending on libphonenumber library
|
|
set(MOD_LIST_PHONENUM phonenum)
|
|
|
|
# * modules depending on rdkafka library
|
|
set(MOD_LIST_KAFKA kafka)
|
|
|
|
# * modules depending on mqtt mosquitto and ev library
|
|
set(MOD_LIST_MQTT mqtt)
|
|
|
|
# * modules depending on nats and ev library
|
|
set(MOD_LIST_NATS nats)
|
|
|
|
# * modules depending on ruxc library
|
|
set(MOD_LIST_RUXC ruxc)
|
|
|
|
# * modules depending on microhttpd library
|
|
set(MOD_LIST_MICROHTTPD microhttpd)
|
|
|
|
# * modules depending on nghttp2 library
|
|
set(MOD_LIST_NGHTTP2 nghttp2)
|
|
|
|
# * modules depending on libgcrypt library
|
|
set(MOD_LIST_GCRYPT gcrypt)
|
|
|
|
# * modules depending on secsipid library
|
|
set(MOD_LIST_SECSIPID secsipid secsipid_proc)
|
|
|
|
# * modules depending on oRTP and mediastreamer2 libraries
|
|
set(MOD_LIST_RTP_MEDIA_SERVER rtp_media_server)
|
|
|
|
# * all modules
|
|
set(MOD_LIST_ALL
|
|
${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_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_IMS}
|
|
${MOD_LIST_ORACLE}
|
|
${MOD_LIST_OUTBOUND}
|
|
${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_KAFKA}
|
|
${MOD_LIST_MQTT}
|
|
${MOD_LIST_NATS}
|
|
${MOD_LIST_RUXC}
|
|
${MOD_LIST_SECSIPID}
|
|
${MOD_LIST_JWT}
|
|
${MOD_LIST_LWSC}
|
|
${MOD_LIST_STIRSHAKEN}
|
|
${MOD_LIST_TLSA}
|
|
${MOD_LIST_TLS_WOLFSSL}
|
|
${MOD_LIST_MICROHTTPD}
|
|
${MOD_LIST_NGHTTP2}
|
|
${MOD_LIST_GCRYPT}
|
|
${MOD_LIST_RTP_MEDIA_SERVER})
|
|
|
|
# sort the list
|
|
list(SORT MOD_LIST_ALL)
|
|
|
|
# --- 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
|
|
set(MODULE_GROUP_ALL ${MOD_LIST_ALL})
|
|
|
|
set(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)
|
|
set(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)
|
|
set(MODULE_GROUP_COMMON
|
|
${MOD_LIST_DB}
|
|
${MOD_LIST_DBUID}
|
|
${MOD_LIST_PCRE}
|
|
${MOD_LIST_RADIUS}
|
|
${MOD_LIST_XMLDEPS}
|
|
${MOD_LIST_PRESENCE}
|
|
${MOD_LIST_TLSDEPS})
|
|
|
|
# For db use (db modules, excluding drivers) module_group_db=$(mod_list_db)
|
|
set(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)
|
|
set(MODULE_GROUP_MYSQL_DRIVER ${MOD_LIST_MYSQL})
|
|
set(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)
|
|
set(MODULE_GROUP_POSTGRES_DRIVER ${MOD_LIST_POSTGRES})
|
|
set(MODULE_GROUP_POSTGRES ${MODULE_GROUP_POSTGRES_DRIVER} ${MODULE_GROUP_DB})
|
|
|
|
# For sqlite module_group_sqlite_driver=$(mod_list_sqlite)
|
|
# module_group_sqlite=$(module_group_sqlite_driver) $(module_group_db)
|
|
set(MODULE_GROUP_SQLITE_DRIVER ${MOD_LIST_SQLITE})
|
|
set(MODULE_GROUP_SQLITE ${MODULE_GROUP_SQLITE_DRIVER} ${MODULE_GROUP_DB})
|
|
|
|
# For radius
|
|
set(MODULE_GROUP_RADIUS ${MODULE_LIST_RADIUS})
|
|
|
|
# For presence kamailio modules
|
|
set(MODULE_GROUP_PRESENCE ${MOD_LIST_PRESENCE})
|
|
|
|
# For cassandra
|
|
set(MODULE_GROUP_CASSANDRA_DRIVER ${MODULE_LIST_CASSANDRA})
|
|
set(MODULE_GROUP_CASSANDRA ${MODULE_GROUP_CASSANDRA_DRIVER} ${MODULE_GROUP_DB})
|
|
|
|
# For all modules not compiled by default
|
|
# list(FILTER MOD_LIST_ALL EXCLUDE REGEX "${MODULE_GROUP_DEFAULT}")
|
|
|
|
# for all protocols (excl. local ones such as unix, tcp, etc.)
|
|
set(AVAILABLE_GROUPS ALL DEFAULT STANDARD COMMON)
|
|
|
|
# --- Groups defined for pacKaging ###
|
|
# Standard modules in main pkg
|
|
set(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)
|
|
set(MODULE_GROUP_KMINI ${MOD_LIST_BASIC} ${MOD_LIST_EXTRA} ${MOD_LIST_DB}
|
|
${MOD_LIST_DBUID} ${MOD_LIST_JSDT})
|
|
# pkg pcre module
|
|
set(MODULE_GROUP_KPCRE ${MOD_LIST_PCRE})
|
|
|
|
# pkg mysql module
|
|
set(MODULE_GROUP_KMYSQL ${MOD_LIST_MYSQL})
|
|
|
|
# pkg postgress module
|
|
set(MODULE_GROUP_KPOSTGRES ${MOD_LIST_POSTGRES})
|
|
|
|
# pkg cpl module
|
|
set(MODULE_GROUP_KCPL ${MOD_LIST_CPL})
|
|
|
|
# pkg xml modules
|
|
set(MODULE_GROUP_KXML ${MOD_LIST_XMLDEPS})
|
|
|
|
# pkg radius modules
|
|
set(MODULE_GROUP_KRADIUS ${MOD_LIST_RADIUS})
|
|
|
|
# pkg unixodbc module
|
|
set(MODULE_GROUP_KUNIXODBC ${MOD_LIST_UNIXODBC})
|
|
|
|
# pkg perl module
|
|
set(MODULE_GROUP_KPERL ${MOD_LIST_PERLDEPS})
|
|
|
|
# pkg snmpstats module
|
|
set(MODULE_GROUP_KSNMPSTATS ${MOD_LIST_SNMPSTATS})
|
|
|
|
# pkg xmpp module
|
|
set(MODULE_GROUP_KXMPP ${MOD_LIST_XMPP})
|
|
|
|
# pkg berkeley module
|
|
set(MODULE_GROUP_KBERKELEY ${MOD_LIST_BERKELEY})
|
|
|
|
# pkg ldap modules
|
|
set(MODULE_GROUP_KLDAP ${MOD_LIST_LDAP})
|
|
|
|
# pkg utils module
|
|
set(MODULE_GROUP_KUTILS ${MOD_LIST_UTILS})
|
|
|
|
# pkg https_async module
|
|
set(MODULE_GROUP_KHTTP_ASYNC ${MOD_LIST_HTTP_ASYNC})
|
|
|
|
# pkg memcached module
|
|
set(MODULE_GROUP_KMEMCACHED ${MOD_LIST_MEMCACHED})
|
|
|
|
# pkg tls module
|
|
set(MODULE_GROUP_KTLS_BASIC ${MOD_LIST_TLSDEPS})
|
|
|
|
# pkg tls module with curl
|
|
if(KTLS_INCLUDE_TLSA)
|
|
set(MODULE_GROUP_KTLS ${MOD_LIST_TLSDEPS} ${MOD_LIST_TLSA})
|
|
else()
|
|
set(MODULE_GROUP_KTLS ${MOD_LIST_TLSDEPS})
|
|
set(MODULE_GROUP_KTLSA ${MOD_LIST_TLSA})
|
|
endif()
|
|
|
|
# pkg tls_wolfssl module
|
|
set(MODULE_GROUP_KTLS_WOLFSSL ${MOD_LIST_TLS_WOLFSSL})
|
|
|
|
# pkg websocket module
|
|
set(MODULE_GROUP_KWEBSOCKET ${MOD_LIST_WEBSOCKET})
|
|
|
|
# pkg presence modules
|
|
set(MODULE_GROUP_KPRESENCE ${MOD_LIST_PRESENCE})
|
|
|
|
# pkg lua module
|
|
set(MODULE_GROUP_KLUA ${MOD_LIST_LUA})
|
|
|
|
# pkg python module
|
|
set(MODULE_GROUP_KPYTHON ${MOD_LIST_PYTHON})
|
|
|
|
# pkg python3 module
|
|
set(MODULE_GROUP_KPYTHON3 ${MOD_LIST_PYTHON3})
|
|
|
|
# pkg ruby module
|
|
set(MODULE_GROUP_KRUBY ${MOD_LIST_RUBY})
|
|
|
|
# pkg geoip module
|
|
set(MODULE_GROUP_KGEOIP ${MOD_LIST_GEOIP})
|
|
|
|
# pkg geoip2 module
|
|
set(MODULE_GROUP_KGEOIP2 ${MOD_LIST_GEOIP2})
|
|
|
|
# pkg sqlite module
|
|
set(MODULE_GROUP_KSQLITE ${MOD_LIST_SQLITE})
|
|
|
|
# K json modules
|
|
set(MODULE_GROUP_KJSON_BASIC ${MOD_LIST_JSON})
|
|
|
|
# K json modules with libevent
|
|
set(MODULE_GROUP_KJSON ${MOD_LIST_JSON} ${MOD_LIST_JSON_EVENT})
|
|
|
|
# K jansson modules
|
|
set(MODULE_GROUP_KJANSSON_BASIC ${MOD_LIST_JANSSON})
|
|
|
|
# K jansson modules with libevent
|
|
set(MODULE_GROUP_KJANSSON ${MOD_LIST_JANSSON} ${MOD_LIST_JANSSON_EVENT})
|
|
|
|
# pkg redis module
|
|
set(MODULE_GROUP_KREDIS ${MOD_LIST_REDIS})
|
|
|
|
# pkg IMS modules
|
|
set(MODULE_GROUP_KIMS ${MOD_LIST_IMS})
|
|
|
|
# pkg outbound module
|
|
set(MODULE_GROUP_KOUTBOUND ${MOD_LIST_OUTBOUND})
|
|
|
|
# pkg java module
|
|
set(MODULE_GROUP_KJAVA ${MOD_LIST_JAVA})
|
|
|
|
# pkg dnssec module
|
|
set(MODULE_GROUP_KDNSSEC ${MOD_LIST_DNSSEC})
|
|
|
|
# pkg sctp module
|
|
set(MODULE_GROUP_KSCTP ${MOD_LIST_SCTP})
|
|
|
|
# pkg auth_ephemeral module
|
|
set(MODULE_GROUP_KAUTHEPH ${MOD_LIST_AUTHEPH})
|
|
|
|
# pkg gzcompress module
|
|
set(MODULE_GROUP_KGZCOMPRESS ${MOD_LIST_GZCOMPRESS})
|
|
|
|
# pkg uuid module
|
|
set(MODULE_GROUP_KUUID ${MOD_LIST_UUID})
|
|
|
|
# pkg libev modules
|
|
set(MODULE_GROUP_KEV ${MOD_LIST_EV})
|
|
|
|
# pkg jwt module
|
|
set(MODULE_GROUP_KJWT ${MOD_LIST_JWT})
|
|
|
|
# pkg lwsc module
|
|
set(MODULE_GROUP_KLWSC ${MOD_LIST_LWSC})
|
|
|
|
# pkg stirshaken module
|
|
set(MODULE_GROUP_KSTIRSHAKEN ${MOD_LIST_STIRSHAKEN})
|
|
|
|
# pkg kazoo module
|
|
set(MODULE_GROUP_KKAZOO ${MOD_LIST_KAZOO})
|
|
|
|
# pkg mongodb modules
|
|
set(MODULE_GROUP_KMONGODB ${MOD_LIST_MONGODB})
|
|
|
|
# pkg cnxcc module
|
|
set(MODULE_GROUP_KCNXCC ${MOD_LIST_CNXCC})
|
|
|
|
# pkg erlang module
|
|
set(MODULE_GROUP_KERLANG ${MOD_LIST_ERLANG})
|
|
|
|
# pkg systemd module
|
|
set(MODULE_GROUP_KSYSTEMD ${MOD_LIST_SYSTEMD})
|
|
|
|
# K nsq modules
|
|
set(MODULE_GROUP_KNSQ ${MOD_LIST_NSQ})
|
|
|
|
# K rabbitmq modules
|
|
set(MODULE_GROUP_KRABBITMQ ${MOD_LIST_RABBITMQ})
|
|
|
|
# K phonenumber modules
|
|
set(MODULE_GROUP_KPHONENUM ${MOD_LIST_PHONENUM})
|
|
|
|
# K kafka modules
|
|
set(MODULE_GROUP_KKAFKA ${MOD_LIST_KAFKA})
|
|
|
|
# K mqtt modules
|
|
set(MODULE_GROUP_KMQTT ${MOD_LIST_MQTT})
|
|
|
|
# K nats modules
|
|
set(MODULE_GROUP_KNATS ${MOD_LIST_NATS})
|
|
|
|
# K ruxc modules
|
|
set(MODULE_GROUP_KRUXC ${MOD_LIST_RUXC})
|
|
|
|
# K microhttpd module
|
|
set(MODULE_GROUP_KMICROHTTPD ${MOD_LIST_MICROHTTPD})
|
|
|
|
# K nghttp2 module
|
|
set(MODULE_GROUP_KNGHTTP2 ${MOD_LIST_NGHTTP2})
|
|
|
|
# K gcrypt module
|
|
set(MODULE_GROUP_KGCRYPT ${MOD_LIST_GCRYPT})
|
|
|
|
# K secsipid modules
|
|
set(MODULE_GROUP_KSECSIPID ${MOD_LIST_SECSIPID})
|
|
|
|
# K rtp_media_server modules
|
|
set(MODULE_GROUP_KRTP_MEDIA_SERVER ${MOD_LIST_RTP_MEDIA_SERVER})
|
|
|
|
# list of static modules
|
|
set(STATIC_MODULES "")
|
|
|
|
list(
|
|
APPEND
|
|
AVAILABLE_GROUPS
|
|
KSTANDARD
|
|
KMINI
|
|
KPCRE
|
|
KMYSQL
|
|
KPOSTGRES
|
|
KCPL
|
|
KXML
|
|
KRADIUS
|
|
KUNIXODBC
|
|
KPERL
|
|
KSNMPSTATS
|
|
KXMPP
|
|
KBERKELEY
|
|
KLDAP
|
|
KUTILS
|
|
KHTTP_ASYNC
|
|
KMEMCACHED
|
|
KTLS_BASIC
|
|
KTLS
|
|
KTLS_WOLFSSL
|
|
KWEBSOCKET
|
|
KPRESENCE
|
|
KLUA
|
|
KPYTHON
|
|
KPYTHON3
|
|
KRUBY
|
|
KGEOIP
|
|
KGEOIP2
|
|
KSQLITE
|
|
KJSON_BASIC
|
|
KJSON
|
|
KJANSSON_BASIC
|
|
KJANSSON
|
|
KREDIS
|
|
KIMS
|
|
KOUTBOUND
|
|
KJAVA
|
|
KDNSSEC
|
|
KSCTP
|
|
KAUTHEPH
|
|
KGZCOMPRESS
|
|
KUUID
|
|
KEV
|
|
KJWT
|
|
KLWSC
|
|
KSTIRSHAKEN
|
|
KKAZOO
|
|
KMONGODB
|
|
KCNXCC
|
|
KERLANG
|
|
KSYSTEMD
|
|
KNSQ
|
|
KRABBITMQ
|
|
KPHONENUM
|
|
KKAFKA
|
|
KMQTT
|
|
KNATS
|
|
KRUXC
|
|
KMICROHTTPD
|
|
KNGHTTP2
|
|
KGCRYPT
|
|
KSECSIPID
|
|
KRT_MEDIA_SERVER)
|
|
|
|
# # Option to allow the user to define which group to build
|
|
# set(SELECTED_PACKAGE_GROUP
|
|
# ""
|
|
# CACHE STRING "Select the package group to build from"
|
|
# PARENT_SCOPE
|
|
# )
|
|
# set_property(CACHE SELECTED_PACKAGE_GROUP PROPERTY STRINGS ${PACKAGE_GROUPS})
|
|
|
|
# # Ensure the selected group is valid
|
|
# if(NOT SELECTED_PACKAGE_GROUP IN_LIST PACKAGE_GROUPS)
|
|
# message(
|
|
# FATAL_ERROR
|
|
# "Invalid package group selected: ${SELECTED_PACKAGE_GROUP}. Please choose from: ${PACKAGE_GROUPS}."
|
|
# )
|
|
# endif()
|
|
|
|
# message(STATUS "Building package group: ${SELECTED_PACKAGE_GROUP}")
|