On darwin (macos), as I tested the usual commands I do when developing/testing, with the version before my commit I got the error:
```
0(44284) ERROR: <core> [main.c:3141]: main(): failed to create runtime dir /usr/local/var/run/kamailio, check directory permissions
```
It was simply after `mkdir buildmac; cd buildmac; cmake ..; make` and then running locally, not doing the make install.
Also, as I tested on the Ubuntu 24.04, I got similar situation:
```
0(562038) DEBUG: jsonrpcs [jsonrpcs_fifo.c:570]: jsonrpc_fifo_mod_init(): fifo path is [/usr/local/var/run/kamailio/kamailio_rpc.fifo]
0(562038) DEBUG: jsonrpcs [jsonrpcs_fifo.c:157]: jsonrpc_init_fifo_file(): testing if fifo file exists ...
0(562038) ERROR: jsonrpcs [jsonrpcs_fifo.c:72]: jsonrpc_init_fifo_server(): Can't create FIFO: Permission denied (mode=432)
```
MacOS is not a GNU System, but Ubuntu should be, so I don't know what actually happens -- I just compared with the old-makefiles to figure out a solution.
Furthermore, I think that the recommended standard path for runtime folders on Linux'es is now `/run/` no longer `/var/run/`, I remember that we had to do such change (also checking the ubunut, /var/run is a synlink to /run -- @linuxmaniac: am I right here?
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/commit/1860420fea7ed57d25bc7d735b46c11…
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/commit/1860420fea7ed57d25bc7d735b46c11c739aa0c4/150535482(a)github.com>
What you mean by included? Right now we have, two way to modify directly modules properties.
1. `cmake/defs.cmake` : there is a target called `common_modules` that is an INTERFACE. We can use this for whatever compiler options, definitions and more. and target propagates all these to each module. This is best to use when there is no usage of the `module_name` since we don't know it yet.
2. `src/modules/CMakeLists.txt`: Add options to each module as well but with extra ability when we need to specify also the `module_name` in the option.
Do you have something else in mind with the template inclusion?
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/commit/4bf2c9634ab19ac76c12c33ddc3d422…
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/commit/4bf2c9634ab19ac76c12c33ddc3d4220631d38ef/150535472(a)github.com>
Regarding this, we had some discussion with @linuxmaniac about the paths in general. CMake offers https://cmake.org/cmake/help/latest/module/GNUInstallDirs.html that has the standard definitions for the usual paths.
Therefore I am not really sure if we need to introduce new variables like `prefix` and `run_dir`. User can supply the `LOCALSTATEDIR` or `RUNSTATEDIR` via `-Dvar='path'` and then figure the best way to provide that to kamailio.
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/commit/1860420fea7ed57d25bc7d735b46c11…
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/commit/1860420fea7ed57d25bc7d735b46c11c739aa0c4/150534991(a)github.com>
@xkaraman: you can replace the files for modules as you consider better.
I said in another comment that making a common template for modules to be included would be likely good, but I was not sure if it is going to slow down, or if that is the best option, and not recalling any further decisions on this, I pushed with a script that I have for such repetitive updates for CMakeLists.txt in module folders.
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/commit/4bf2c9634ab19ac76c12c33ddc3d422…
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/commit/4bf2c9634ab19ac76c12c33ddc3d4220631d38ef/150534486(a)github.com>
@miconda Mind if i revert this and the one with `-ffile-prefix` commits, so that we adjust this in `modules/CMakelists.txt` or `common_modules INTERFACE` since it's common for all modules?
It will be cleaner I believe and have a more central way to change it for all of them?
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/commit/4bf2c9634ab19ac76c12c33ddc3d422…
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/commit/4bf2c9634ab19ac76c12c33ddc3d4220631d38ef/150533398(a)github.com>
### Description
From the cmake timeline 3.0(2014) is called "modern cmake" and ~3.12/3.13(2018) is "more modern cmake" : https://www.youtube.com/watch?v=y7ndUhdQuU8
Since we are doing a major renovation on the kamailio build system should we target the "more modern" generation (that is already > 5 years old). This will encourage the project to follow cmake best practices.
Ping @xkaraman @miconda
Versions in debian: buster(3.13) bullseye(3.25) bookworm/trixie(3.30)
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/4078
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/4078(a)github.com>