123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805 |
- # 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}")
|