<!-- Kamailio Pull Request Template -->
<!-- IMPORTANT: - for detailed contributing guidelines, read: https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md - pull requests must be done to master branch, unless they are backports of fixes from master branch to a stable branch - backports to stable branches must be done with 'git cherry-pick -x ...' - code is contributed under BSD for core and main components (tm, sl, auth, tls) - code is contributed GPLv2 or a compatible license for the other components - GPL code is contributed with OpenSSL licensing exception -->
#### Pre-Submission Checklist <!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply --> <!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above--> <!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list --> - [x] Commit message has the format required by CONTRIBUTING guide - [x] Commits are split per component (core, individual modules, libs, utils, ...) - [x] Each component has a single commit (if not, squash them into one commit) - [x] No commits to README files for modules (changes must be done to docbook files in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change - [ ] Small bug fix (non-breaking change which fixes an issue) - [x] New feature (non-breaking change which adds new functionality) - [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist: <!-- Go over all points below, and after creating the PR, tick the checkboxes that apply --> - [ ] PR should be backported to stable branches - [x] Tested changes locally - [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description <!-- Describe your changes in detail --> This PR adds initial support for building kamailio with CMake.
See [docs](https://github.com/kamailio/kamailio-wiki/pull/63) for more information on how to build and use CMake. You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/4043
-- Commit Summary --
* core/resovle: Fix compile if DNS_USE_CACHE not defined * core/forward: Define ret even if USE_TCP is not defined * Add build folder to ignore * Add CMake support * Core compiles and runs successfully on Linux * Add some notes regarding definitions * Add missing definitions * CMake: Clean up and minor fixes * CMake: Add install targets for binary,cfg,kamctl and kamdbctl * CMake: Install utils (kamctl,kamdbctl and required) with sed changes * CMake: Move notes out of pkg * CMake: Add uninstall target * CMake: FIx core building and installing * CMake: Add lib support * CMake: Add initial module support * CMake: Fix formating * Update gitignore/Add cmake-format file * Add aarch64 options * Make cross-compile available * Format CMakeLists with cmake-format * Add build docs support * cmake: add github action * cmake: Remove windows from matrix * cmake: Add aarch64 cross-compile * cmake: rename arm to aarch64 arch * cmake: Add clang support * cmake: Remove duplicate definition * cmake: Upgrade warning to errors to match clang * cmake: Add target host definition * cmake: Allow only by trigger * cmake: Add cmake to most (all) modules * cmake: declare dproto * cmake: Add MOD_NAMEID definitions to modules * cmake: modify build_rpath * Change rpath * cmake: Move kamailio to root folder * cmake: Modify run path of modules * cmake: var/run path change * cmake: make it abs path * cmake: Add option to select groups * cmake: Add all modules group * cmake: Default group set to default modules * cmake: groups update, fixup me * cmake: Add Find MariaDB and MySQL cmake * cmake: Add absolute path for /var/run (fixup with other commit) * cmake: Only search for mariadb * cmake: Update mysql cmake * cmake: Remove app_mono * cmake: modify FindMariaDBCLient.cmake * cmake: Add description to use_mcast option * cmake: Fix format * cmake: Add config files to uninstall target * cmake: Add FindRadius to discover radius client * cmake: Modify dependencies so parser c files are generated when needed * cmake: Policy to link against targets defined in other CMakelists. * cmake: Define MOD_NAME for all modules * cmake: Remove RPath from module's Cmake and use PRIVATE on all * cmake: Add support to exclude modules * cmake: Modules with external deps ready * cmake: Add srdb2 CMakeLists.txt * cmake: Add various Find[Module] for cmake * cmake: Add FindXXX to dedicated folder * cmake: Add CPack for packaging (experimental) * camke: Clean up some commented sections * cmake/modules: Add NETSNMP * cmake/libs: Modify targets with lib_ and add more libs * cmake/modules: Update ALL modules CMakeLists.txt
-- File Changes --
A .github/workflows/cmake_build.yml (84) M .gitignore (2) A CMakeLists.txt (61) A CMakelists.notes (54) A cmake/aarch64-toolchain.cmake (28) A cmake/cmake-format.py (240) A cmake/cmake_uninstall.cmake.in (32) A cmake/modules/FindBerkeleyDB.cmake (182) A cmake/modules/FindErlang.cmake (151) A cmake/modules/FindLdap.cmake (119) A cmake/modules/FindLibev.cmake (60) A cmake/modules/FindMariaDBClient.cmake (68) A cmake/modules/FindMySQL.cmake (964) A cmake/modules/FindNETSNMP.cmake (76) A cmake/modules/FindOracle.cmake (115) A cmake/modules/FindRadius.cmake (51) A cmake/modules_docs.cmake (74) A src/CMakeLists.txt (164) A src/compiler-specific.cmake (55) A src/core/CMakeLists.txt (57) A src/core/autover.h.in (6) M src/core/forward.h (6) M src/core/resolve.c (8) A src/defs.cmake (318) A src/lib/CMakeLists.txt (30) A src/lib/ims/CMakeLists.txt (22) A src/lib/print/CMakeLists.txt (18) A src/lib/srdb1/CMakeLists.txt (17) A src/lib/srdb2/CMakeLists.txt (15) A src/lib/trie/CMakeLists.txt (16) A src/modules/CMakeLists.txt (143) A src/modules/acc/CMakeLists.txt (10) A src/modules/acc_diameter/CMakeLists.txt (8) A src/modules/acc_json/CMakeLists.txt (12) A src/modules/acc_radius/CMakeLists.txt (11) A src/modules/alias_db/CMakeLists.txt (10) A src/modules/app_java/CMakeLists.txt (14) A src/modules/app_jsdt/CMakeLists.txt (8) A src/modules/app_lua/CMakeLists.txt (22) A src/modules/app_perl/CMakeLists.txt (14) A src/modules/app_python/CMakeLists.txt (11) A src/modules/app_python3/CMakeLists.txt (10) A src/modules/app_python3s/CMakeLists.txt (10) A src/modules/app_ruby/CMakeLists.txt (10) A src/modules/app_ruby_proc/CMakeLists.txt (12) A src/modules/async/CMakeLists.txt (8) A src/modules/auth/CMakeLists.txt (9) A src/modules/auth_db/CMakeLists.txt (10) A src/modules/auth_diameter/CMakeLists.txt (8) A src/modules/auth_ephemeral/CMakeLists.txt (8) A src/modules/auth_radius/CMakeLists.txt (11) A src/modules/auth_xkeys/CMakeLists.txt (8) A src/modules/avp/CMakeLists.txt (8) A src/modules/avpops/CMakeLists.txt (10) A src/modules/benchmark/CMakeLists.txt (8) A src/modules/blst/CMakeLists.txt (8) A src/modules/call_control/CMakeLists.txt (8) A src/modules/call_obj/CMakeLists.txt (8) A src/modules/carrierroute/CMakeLists.txt (11) A src/modules/cdp/CMakeLists.txt (10) A src/modules/cdp_avp/CMakeLists.txt (8) A src/modules/cfg_db/CMakeLists.txt (10) A src/modules/cfg_rpc/CMakeLists.txt (10) A src/modules/cfgt/CMakeLists.txt (8) A src/modules/cfgutils/CMakeLists.txt (8) A src/modules/cnxcc/CMakeLists.txt (18) A src/modules/corex/CMakeLists.txt (8) A src/modules/counters/CMakeLists.txt (10) A src/modules/cplc/CMakeLists.txt (12) A src/modules/crypto/CMakeLists.txt (10) A src/modules/ctl/CMakeLists.txt (12) A src/modules/db2_ldap/CMakeLists.txt (22) A src/modules/db2_ops/CMakeLists.txt (10) A src/modules/db_berkeley/CMakeLists.txt (12) A src/modules/db_cluster/CMakeLists.txt (10) A src/modules/db_flatstore/CMakeLists.txt (10) A src/modules/db_mongodb/CMakeLists.txt (17) A src/modules/db_mysql/CMakeLists.txt (19) A src/modules/db_oracle/CMakeLists.txt (16) A src/modules/db_perlvdb/CMakeLists.txt (13) A src/modules/db_postgres/CMakeLists.txt (14) A src/modules/db_redis/CMakeLists.txt (21) A src/modules/db_sqlite/CMakeLists.txt (12) A src/modules/db_text/CMakeLists.txt (10) A src/modules/db_unixodbc/CMakeLists.txt (13) A src/modules/debugger/CMakeLists.txt (8) A src/modules/dialog/CMakeLists.txt (10) A src/modules/dialplan/CMakeLists.txt (10) A src/modules/dispatcher/CMakeLists.txt (10) A src/modules/diversion/CMakeLists.txt (8) A src/modules/dlgs/CMakeLists.txt (8) A src/modules/dmq/CMakeLists.txt (10) A src/modules/dmq_usrloc/CMakeLists.txt (8) A src/modules/dnssec/CMakeLists.txt (19) A src/modules/domain/CMakeLists.txt (10) A src/modules/domainpolicy/CMakeLists.txt (10) A src/modules/drouting/CMakeLists.txt (10) A src/modules/enum/CMakeLists.txt (8) A src/modules/erlang/CMakeLists.txt (11) A src/modules/evapi/CMakeLists.txt (10) A src/modules/evrexec/CMakeLists.txt (8) A src/modules/exec/CMakeLists.txt (8) A src/modules/file_out/CMakeLists.txt (8) A src/modules/gcrypt/CMakeLists.txt (12) A src/modules/geoip/CMakeLists.txt (12) A src/modules/geoip2/CMakeLists.txt (13) A src/modules/group/CMakeLists.txt (10) A src/modules/groups.cmake (686) A src/modules/gzcompress/CMakeLists.txt (12) A src/modules/h350/CMakeLists.txt (8) A src/modules/htable/CMakeLists.txt (10) A src/modules/http_async_client/CMakeLists.txt (16) A src/modules/http_client/CMakeLists.txt (10) A src/modules/imc/CMakeLists.txt (10) A src/modules/ims_auth/CMakeLists.txt (10) A src/modules/ims_charging/CMakeLists.txt (10) A src/modules/ims_dialog/CMakeLists.txt (10) A src/modules/ims_diameter_server/CMakeLists.txt (10) A src/modules/ims_icscf/CMakeLists.txt (12) A src/modules/ims_ipsec_pcscf/CMakeLists.txt (14) A src/modules/ims_isc/CMakeLists.txt (11) A src/modules/ims_ocs/CMakeLists.txt (10) A src/modules/ims_qos/CMakeLists.txt (10) A src/modules/ims_qos_npn/CMakeLists.txt (10) A src/modules/ims_registrar_pcscf/CMakeLists.txt (10) A src/modules/ims_registrar_scscf/CMakeLists.txt (10) A src/modules/ims_usrloc_pcscf/CMakeLists.txt (10) A src/modules/ims_usrloc_scscf/CMakeLists.txt (10) A src/modules/influxdbc/CMakeLists.txt (8) A src/modules/ipops/CMakeLists.txt (8) A src/modules/jansson/CMakeLists.txt (12) A src/modules/janssonrpcc/CMakeLists.txt (16) A src/modules/json/CMakeLists.txt (16) A src/modules/jsonrpcc/CMakeLists.txt (16) A src/modules/jsonrpcs/CMakeLists.txt (8) A src/modules/jwt/CMakeLists.txt (16) A src/modules/kafka/CMakeLists.txt (16) A src/modules/kazoo/CMakeLists.txt (33) A src/modules/keepalive/CMakeLists.txt (10) A src/modules/kemix/CMakeLists.txt (8) A src/modules/kex/CMakeLists.txt (8) A src/modules/lcr/CMakeLists.txt (19) A src/modules/ldap/CMakeLists.txt (10) A src/modules/log_custom/CMakeLists.txt (8) A src/modules/log_systemd/CMakeLists.txt (12) A src/modules/lost/CMakeLists.txt (11) A src/modules/lrkproxy/CMakeLists.txt (8) A src/modules/lwsc/CMakeLists.txt (12) A src/modules/mangler/CMakeLists.txt (8) A src/modules/math/CMakeLists.txt (8) A src/modules/matrix/CMakeLists.txt (10) A src/modules/maxfwd/CMakeLists.txt (8) A src/modules/mediaproxy/CMakeLists.txt (8) A src/modules/memcached/CMakeLists.txt (12) A src/modules/microhttpd/CMakeLists.txt (13) A src/modules/misc_radius/CMakeLists.txt (12) A src/modules/misctest/CMakeLists.txt (8) A src/modules/mohqueue/CMakeLists.txt (10) A src/modules/mqtt/CMakeLists.txt (14) A src/modules/mqueue/CMakeLists.txt (10) A src/modules/msilo/CMakeLists.txt (10) A src/modules/msrp/CMakeLists.txt (8) A src/modules/mtree/CMakeLists.txt (10) A src/modules/nat_traversal/CMakeLists.txt (8) A src/modules/nathelper/CMakeLists.txt (8) A src/modules/nats/CMakeLists.txt (12) A src/modules/ndb_cassandra/CMakeLists.txt (12) A src/modules/ndb_mongodb/CMakeLists.txt (12) A src/modules/ndb_redis/CMakeLists.txt (12) A src/modules/nghttp2/CMakeLists.txt (20) A src/modules/nosip/CMakeLists.txt (8) A src/modules/nsq/CMakeLists.txt (29) A src/modules/outbound/CMakeLists.txt (10) A src/modules/p_usrloc/CMakeLists.txt (10) A src/modules/path/CMakeLists.txt (8) A src/modules/pdb/CMakeLists.txt (8) A src/modules/pdt/CMakeLists.txt (10) A src/modules/peering/CMakeLists.txt (11) A src/modules/permissions/CMakeLists.txt (10) A src/modules/phonenum/CMakeLists.txt (49) A src/modules/pike/CMakeLists.txt (8) A src/modules/pipelimit/CMakeLists.txt (10) A src/modules/posops/CMakeLists.txt (8) A src/modules/prefix_route/CMakeLists.txt (10) A src/modules/presence/CMakeLists.txt (14) A src/modules/presence_conference/CMakeLists.txt (10) A src/modules/presence_dialoginfo/CMakeLists.txt (10) A src/modules/presence_mwi/CMakeLists.txt (8) A src/modules/presence_profile/CMakeLists.txt (8) A src/modules/presence_reginfo/CMakeLists.txt (10) A src/modules/presence_xml/CMakeLists.txt (13) A src/modules/print/CMakeLists.txt (8) A src/modules/print_lib/CMakeLists.txt (11) A src/modules/pua/CMakeLists.txt (12) A src/modules/pua_bla/CMakeLists.txt (10) A src/modules/pua_dialoginfo/CMakeLists.txt (10) A src/modules/pua_json/CMakeLists.txt (16) A src/modules/pua_reginfo/CMakeLists.txt (10) A src/modules/pua_rpc/CMakeLists.txt (9) A src/modules/pua_usrloc/CMakeLists.txt (10) A src/modules/pua_xmpp/CMakeLists.txt (10) A src/modules/pv/CMakeLists.txt (9) A src/modules/pv_headers/CMakeLists.txt (8) A src/modules/pvtpl/CMakeLists.txt (8) A src/modules/qos/CMakeLists.txt (8) A src/modules/rabbitmq/CMakeLists.txt (26) A src/modules/ratelimit/CMakeLists.txt (8) A src/modules/regex/CMakeLists.txt (17) A src/modules/registrar/CMakeLists.txt (9) A src/modules/rls/CMakeLists.txt (15) A src/modules/rr/CMakeLists.txt (8) A src/modules/rtimer/CMakeLists.txt (8) A src/modules/rtjson/CMakeLists.txt (8) A src/modules/rtp_media_server/CMakeLists.txt (24) A src/modules/rtpengine/CMakeLists.txt (10) A src/modules/rtpproxy/CMakeLists.txt (10) A src/modules/ruxc/CMakeLists.txt (18) A src/modules/sanity/CMakeLists.txt (8) A src/modules/sca/CMakeLists.txt (10) A src/modules/sctp/CMakeLists.txt (11) A src/modules/sdpops/CMakeLists.txt (8) A src/modules/seas/CMakeLists.txt (8) A src/modules/secfilter/CMakeLists.txt (10) A src/modules/secsipid/CMakeLists.txt (8) A src/modules/secsipid_proc/CMakeLists.txt (21) A src/modules/sipcapture/CMakeLists.txt (10) A src/modules/sipdump/CMakeLists.txt (8) A src/modules/sipjson/CMakeLists.txt (8) A src/modules/siprepo/CMakeLists.txt (8) A src/modules/sipt/CMakeLists.txt (8) A src/modules/siptrace/CMakeLists.txt (10) A src/modules/siputils/CMakeLists.txt (10) A src/modules/sl/CMakeLists.txt (8) A src/modules/slack/CMakeLists.txt (10) A src/modules/sms/CMakeLists.txt (8) A src/modules/smsops/CMakeLists.txt (8) A src/modules/snmpstats/CMakeLists.txt (23) A src/modules/speeddial/CMakeLists.txt (10) A src/modules/sqlops/CMakeLists.txt (10) A src/modules/ss7ops/CMakeLists.txt (8) A src/modules/sst/CMakeLists.txt (8) A src/modules/statistics/CMakeLists.txt (8) A src/modules/statsc/CMakeLists.txt (8) A src/modules/statsd/CMakeLists.txt (8) A src/modules/stirshaken/CMakeLists.txt (12) A src/modules/stun/CMakeLists.txt (8) A src/modules/sworker/CMakeLists.txt (8) A src/modules/systemdops/CMakeLists.txt (12) A src/modules/tcpops/CMakeLists.txt (8) A src/modules/textops/CMakeLists.txt (8) A src/modules/textopsx/CMakeLists.txt (8) A src/modules/timer/CMakeLists.txt (8) A src/modules/tls/CMakeLists.txt (46) A src/modules/tls_wolfssl/CMakeLists.txt (15) A src/modules/tlsa/CMakeLists.txt (35) A src/modules/tm/CMakeLists.txt (12) A src/modules/tmrec/CMakeLists.txt (8) A src/modules/tmx/CMakeLists.txt (9) A src/modules/topoh/CMakeLists.txt (8) A src/modules/topos/CMakeLists.txt (10) A src/modules/topos_redis/CMakeLists.txt (12) A src/modules/tsilo/CMakeLists.txt (12) A src/modules/uac/CMakeLists.txt (10) A src/modules/uac_redirect/CMakeLists.txt (8) A src/modules/uid_auth_db/CMakeLists.txt (9) A src/modules/uid_avp_db/CMakeLists.txt (9) A src/modules/uid_domain/CMakeLists.txt (10) A src/modules/uid_gflags/CMakeLists.txt (10) A src/modules/uid_uri_db/CMakeLists.txt (10) A src/modules/uri_db/CMakeLists.txt (10) A src/modules/userblocklist/CMakeLists.txt (10) A src/modules/usrloc/CMakeLists.txt (10) A src/modules/utils/CMakeLists.txt (12) A src/modules/uuid/CMakeLists.txt (12) A src/modules/websocket/CMakeLists.txt (17) A src/modules/xcap_client/CMakeLists.txt (12) A src/modules/xcap_server/CMakeLists.txt (12) A src/modules/xhttp/CMakeLists.txt (8) A src/modules/xhttp_pi/CMakeLists.txt (12) A src/modules/xhttp_prom/CMakeLists.txt (8) A src/modules/xhttp_rpc/CMakeLists.txt (8) A src/modules/xlog/CMakeLists.txt (8) A src/modules/xmlops/CMakeLists.txt (10) A src/modules/xmlrpc/CMakeLists.txt (12) A src/modules/xmpp/CMakeLists.txt (13) A src/modules/xprint/CMakeLists.txt (8) A src/os-specific.cmake (97) A utils/kamctl/CMakeLists.txt (196)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/4043.patch https://github.com/kamailio/kamailio/pull/4043.diff
Thanks a lot for your work with the cmake support!
@xkaraman and @adubovikov did also testing of cmake branch during devel meeting in Dusseldorf, this PR should be in good shape to merge rather quick in order to allow time for everyone to test their compile options before freezing. Of course, even after freezing there can be changes to the build system, but it would be good to know by freezing time if we can go with cmake only further.
The old Makefiles can co-exist with the new cmake-based build system for a while, but if cmake one proves to be ready enough before freezing, I would propose to remove the old Makefiles, they got too complex over the past 20 years...
If no comments against till Monday afternoon or soo, I think this PR can be merged.
Great work Xenofon, thank you. Indeed we should aim to merge it soon, to also allow different developers to test it more. Related to the process of merging it, we probably should squash it everything together to one commit, as it contains are over 60 commits, right? Some of the initial commits are using also a different commit message format, no prefix.
Fine for me to squash and merge, there are only new files, so it should not interfere with backports.
Some modules `CMakelists.txt` have `TODO: ` comments, which should initiate discussion regarding deprecated libraries used. A review of those would be also a good addition I think!
Fine for me to squash and merge, there are only new files, so it should not interfere with backports.
There are some edited files like `forward.h` and `resolve.c` where I added some variables need to compile or some logic handling macro feature definitions for example.
i can probably remove those changes and create a separate PR for fixing since they are not cmake-related
@xkaraman pushed 66 commits.
1459f374d88e343098e7c8870fbaf7e5b124a972 core/forward: Define ret even if USE_TCP is not defined bd85139cbcfc0dc7bfac26e93b7f25e2afa904ff Add build folder to ignore 6353dd28e04d15cbc3973f8ce94b4564c01f1cbd Add CMake support ec9b170025d95b62f07833d6b8138f6729da09bf Core compiles and runs successfully on Linux 1a61db965d41ea99e742d77419d3c32182da4714 Add some notes regarding definitions fee99c889c1f3f14965b97bd23a3a5031ab42304 Add missing definitions ff3b35762fa17dcff313ac76fa30cb5c76eea30a CMake: Clean up and minor fixes ef391c9ce75d042b5351970e14e3fbd2192fa906 CMake: Add install targets for binary,cfg,kamctl and kamdbctl 90d5961f7ca685c21808e712a3b3c148d9a2b11d CMake: Install utils (kamctl,kamdbctl and required) with sed changes 9a5ab768832deea0589d66728cea54b4a874d862 CMake: Move notes out of pkg 6ff493770455f962285fda790865e7e2228ea981 CMake: Add uninstall target d70665942bb87a17b47ef73252a4f1f0cd763877 CMake: FIx core building and installing 624a7f64f534f29c544eea83424b7efd7aa1195d CMake: Add lib support 55148b0c4817743d75e9a2d6b0f85b319b36a77e CMake: Add initial module support 3f1634904f7ebd56cec50abf1028e9d36423e3df CMake: Fix formating c804be49d7bfcc52131d8ee6c22c69cb4e2a704d Update gitignore/Add cmake-format file 38b108bf10fc8fea9c99646104cbccb18c9e4b98 Add aarch64 options a4e889e70cb4c4199de21c27468063783216000c Make cross-compile available 690292e070e3e62e9f1678f55e843fdae49a9c02 Format CMakeLists with cmake-format 980395ebb944f445748575a2a6d1733a0ec68ed1 Add build docs support d43272135906765c527e368945c0300c283586f5 cmake: add github action 3a9e4bd4cda6a7df7b7e2203fa3753d12cb130e5 cmake: Remove windows from matrix f7caaa1932f8948c8468f18153041eb674f4abec cmake: Add aarch64 cross-compile 0cb836a36d37a9b6b457fdd237a8b64be7bb48a2 cmake: rename arm to aarch64 arch 9678903794b2e25d909241d26b0e7a9601de6860 cmake: Add clang support 0495a991c91a6e070913c76c078707f20464eaa0 cmake: Remove duplicate definition 195572d4dedcaa7006327da16504cb2f0e416e95 cmake: Upgrade warning to errors to match clang 3c18e0bcc1c0c52dc6eb0e45ca29e2e7d3c35ce2 cmake: Add target host definition a15ec9c50e88ac8e533a96837c6e93de6b7a3c22 cmake: Allow only by trigger 8bf66aaea458e874d46defb866e4ad6d72a0f512 cmake: Add cmake to most (all) modules d75480a0851afa7db708b4d3d6db0b74ea55d52e cmake: declare dproto 771e49df4d695113e746bf6e470d6fb6c8c93ec2 cmake: Add MOD_NAMEID definitions to modules 24253908159a40038d247b1558f0640448827126 cmake: modify build_rpath f4a5babb723a387e1d54856814b7722d7e13a345 Change rpath a2c9bd6acbc9185600b404bab4f94d746fe476d0 cmake: Move kamailio to root folder 4b1d5c6c61439aa882fc2670f1af6ff7827dff8e cmake: Modify run path of modules f5dfa8a09a354d9c356ca36ff7d028bcd8dba9c8 cmake: var/run path change 709a25d680e6e4469fd4a3f207639b1cf0248823 cmake: make it abs path 8e1b506d3a1500fc3b2acb9f2426b73871c9b519 cmake: Add option to select groups 56f106c02ed31de23d781f2afc4ff8ec991db288 cmake: Add all modules group 3d075c6e2d08837f4e68808a4afdd22665adcb8f cmake: Default group set to default modules 016c5cffdeb8a54f0bed6ba3d69cbc974b7df6f6 cmake: groups update, fixup me 6a459c5a604fe4097f0d4c4a1b3e1b095e040483 cmake: Add Find MariaDB and MySQL cmake 8caebdf554284e03cee3efc47b6d1b84bb119884 cmake: Add absolute path for /var/run (fixup with other commit) a2b358f2faa7c186b3dcf3398d268e038f93c918 cmake: Only search for mariadb 877e35e9793dee7cfbb42788c3b8963e2101c795 cmake: Update mysql cmake dfd3dd333a351fbc268fa6f0eddf8f899de7f0eb cmake: Remove app_mono 33b0bb43564a6811d580923ce5b00ce75322533d cmake: modify FindMariaDBCLient.cmake 13cd3e05a4905244033ee45af84b247a814470b7 cmake: Add description to use_mcast option eb013d2cfb55ec399ac570b355d28fa7d8cba6e7 cmake: Fix format 10d116fbdd7f1679518fef49bb6a8680fdd2e75b cmake: Add config files to uninstall target 7d9ca4c3071b7709fad3dd0f85dc6c3eaf5e5bf4 cmake: Add FindRadius to discover radius client 6c635768339a30adf4acd683e2a1fe2ed4739259 cmake: Modify dependencies so parser c files are generated when needed 1413c2f72e0c29e619c617d3d6b9c0587d8c95db cmake: Policy to link against targets defined in other CMakelists. 0404327736dc0e01e9038a087f5418ef2f39f573 cmake: Define MOD_NAME for all modules 66ba979ac90b09c66094fe74e5b744e4a7b40f10 cmake: Remove RPath from module's Cmake and use PRIVATE on all 437981f00521203980351f30784e5fa1a80011d4 cmake: Add support to exclude modules d1e3fcd52f7a4bea887eb394b0678182b0e9eda8 cmake: Modules with external deps ready 84ae165baacba3550cfe555ee515558ecb09c49f cmake: Add srdb2 CMakeLists.txt 0cd610ad5fdf6ff914afcb6cf66ae85fedf79634 cmake: Add various Find[Module] for cmake feceb3ec814bbec4871dba6cafecc5b1d783e803 cmake: Add FindXXX to dedicated folder ea91937c57bfefc6c11abaf08cb22d707dd0f5ef cmake: Add CPack for packaging (experimental) 056634387092950e011d978b5d381d1e11088f0e camke: Clean up some commented sections d8eeea10be6f7501b9327e3257518a1fa7f5dde3 cmake/modules: Add NETSNMP ae6cf7b4f2a3c9763a37eb5439da36e9ba0e090f cmake/libs: Modify targets with lib_ and add more libs 8e497d564a4b54487b15b53040c959317e6167f6 cmake/modules: Update ALL modules CMakeLists.txt
@xkaraman pushed 35 commits.
fc5bda4c0bbf29cbcbe807b21dbd461c26f8a2ae cmake: Add MOD_NAMEID definitions to modules 29d2d8fd60cbf1b5a5599f8c9fa440b84187f86b cmake: modify build_rpath 84198baf3127e5233c6d0451027c483ae03e2185 Change rpath 391bb354014d56788f27bdef6ecd2924677bda80 cmake: Move kamailio to root folder f496a363cb2ec236cf96040d643d82c86027fcfb cmake: Modify run path of modules 8fbca20bfc5a1ac70d72bd92b53dc37a74e7ba1f cmake: var/run path change 7191885753c29112f70124031e81bed5ffd7557d cmake: make it abs path f0e2d873d0ecde4cc3405239290a3b7dafcf0af4 cmake: Add option to select groups a564bdfecd2fccdb021f8fb72516ec01dbb81eeb cmake: Add all modules group d820166c9fe04c1a7723cd9c1ba9f98bf423c928 cmake: Default group set to default modules ecad66538c7270e32b0bcb7294e3b45dad83da8b cmake: groups update, fixup me 9c25d281410268fbdc8a5bc39e4cbd4b364609db cmake: Add Find MariaDB and MySQL cmake 7f2f05baec621cfea46ef0e4bf8753df92c71730 cmake: Add absolute path for /var/run (fixup with other commit) 724f95f3661538acb900500cec918b6a5113c0ad cmake: Only search for mariadb d48c9c4a1b960067ee5f3d5bdbad0e1eff001db0 cmake: Update mysql cmake 46da3a2c5496a1bbf96dab803a49ba2453f5a909 cmake: Remove app_mono 7d1eab0c6f6643f6307ccf35a9b4e99079b761b4 cmake: modify FindMariaDBCLient.cmake 44d64f4cde984ea69a1e242ed1e5104d51353e02 cmake: Add description to use_mcast option ec5b4b90bd3e8298e0df26352a8306e006d6cc97 cmake: Fix format c1229b467d9f75af54d57c2fdbec5294053e3019 cmake: Add config files to uninstall target 22f46f342ef663e1a72769ea1017319776671feb cmake: Add FindRadius to discover radius client e558035ddbff49b395f9557a188c10de793e2d1f cmake: Modify dependencies so parser c files are generated when needed 1cdf94d34f67701c5be2bd403557ccfc7f618a52 cmake: Policy to link against targets defined in other CMakelists. bcc894c248757af86713d506529b9e7007967c4d cmake: Define MOD_NAME for all modules 02a341048d51c81ac7748ebbcb25d07e5421de8d cmake: Remove RPath from module's Cmake and use PRIVATE on all d36de1cdca3cb5d462d0deacc9248e46d90a0184 cmake: Add support to exclude modules c3cee33acc1164f91eddf5593fb4e8530530b1da cmake: Modules with external deps ready 9dc80df3639f0396e6b5ffdf05d07379eef50cdb cmake: Add srdb2 CMakeLists.txt 87e4682153a367887d971662b327ea1aea1b4269 cmake: Add various Find[Module] for cmake 812f6c3ed1e003a292002b2de76f001b826e17f9 cmake: Add FindXXX to dedicated folder ebac7e1e970415a4f826b9848ed7f299573d0de5 cmake: Add CPack for packaging (experimental) 578905634ec20da5ab1db7e404549cbc5678c6e7 camke: Clean up some commented sections 0f8027fc4ca1d368c979bf7b5437055c43e69f9f cmake/modules: Add NETSNMP 3b7295e922ddb0cd89a6fa0e3ad34fff7ab6846b cmake/libs: Modify targets with lib_ and add more libs 56479a3a322316cf6b8419143592d57f3423d6e2 cmake/modules: Update ALL modules CMakeLists.txt
@xkaraman pushed 7 commits.
35a5c829b86906874f73d3ba0f482cea801f3b50 cmake: Replace deprecated cmake function 5ea1a3a19429f5ea333328fd4adb3719a7d9d24c cmake: Move cmake-related to cmake folder 4c26c0b5854e75b9ca046ee523ca2cc725580718 cmake: Modfiy MODS_DIR def 5bc0c3af507f83c53c41e8baaa75b6d92d01b02e cmake: Clean up some comments and debug messages 03b00d0b093d1e78561e9e1cfcfae32c23f73586 cmake: FindNetSNMP modifications db0f4581553615daa3f1e68eb7f4cb5ee9464d23 cmake: db_redis remove comments 380873a15a9609515170894a6530592064904876 cmake: Update messages to STATUS
Pushed some more commits regarding cleanup and better structuring of cmake files.
Probably this PR can be squashed and merged now. Then further updates can be pushed directly to master branch while testing with cmake.
Merged #4043 into master.