dilyanpalauzov created an issue (kamailio/kamailio#4317)
In the 6.0 branch the FLAVOUR option allows in cmake-gui (ccmake) setting `kamailio` as only option. As it is no-op, it should not be displayed in cmake-gui.
The option MODULE_GROUP_NAME is documented as „Group of modules to build (one or multiple space seperated group)“. In cmake-gui it allows with enter to toggle between several values: DEFAULT, STANDARD, COMMON, KSTANDARD, KMINI, KPCRE, KMYSQL, KPOSTGRES, …. Using ccmake it is not possible to to set multiple values. The help string should mention all possible values. It should be plural: groups.
The options in ccmake-gui `XSLT_VALIDATE,` and `XSLT_VERBOSE,` have a comma in their names too much.
The option `CMAKE_BUILD_TYPE` allows in Kamailio toggling between four possible values: Debug, Release, MinSizeRel and RelWithDebInfo. ClamAV adds one more value for cmake-gui: `None`. This toggling is not yet available in the build system of cmake (when building cmake using cmake) - https://gitlab.kitware.com/cmake/cmake/-/issues/26434 . Is it reasonable to have for CMAKE_BUILD_TYPE also `None` as permitted value? I do not know the answer, that is why I am raising this question.
dilyanpalauzov left a comment (kamailio/kamailio#4317)
I consider these NO_… OFF options as confusing, as they involve double negations. Some people, depending on their native language, can consider double negation to mean single negation. Is with NO_A=OFF support for A enabled or disabled? I suggest substituting NO_ with sometihng different, like SUPPORT or USE. ``` NO_DEV_POLL OFF NO_EPOLL OFF NO_KQUEUE OFF NO_SELECT OFF NO_SIGIO_RT OFF
NO_DEV_POLL: No /dev/poll support ```
xkaraman left a comment (kamailio/kamailio#4317)
In the 6.0 branch the FLAVOUR option allows in cmake-gui (ccmake) setting `kamailio` as only option. As it is no-op, it should not be displayed in cmake-gui.
You are right. this was kept as part of the translation of make to cmake in case it was required to fallback. I think we are now completely using the kamailio flavour and this option can be removed of course.
The option MODULE_GROUP_NAME is documented as „Group of modules to build (one or multiple space seperated group)“. In cmake-gui it allows with enter to toggle between several values: DEFAULT, STANDARD, COMMON, KSTANDARD, KMINI, KPCRE, KMYSQL, KPOSTGRES, …. Using ccmake it is not possible to to set multiple values. The help string should mention all possible values. It should be plural: groups.
Ahh good catch. The description was before it was allowed for multiple groups, so i offered them as a list to choose from. After adding the option for multiple, this should be refined. I will take a look at it ofc.
The options in ccmake-gui `XSLT_VALIDATE,` and `XSLT_VERBOSE,` have a comma in their names too much.
Yeah i noticed that as well. Will be fixed.
The option `CMAKE_BUILD_TYPE` allows in Kamailio toggling between four possible values: Debug, Release, MinSizeRel and RelWithDebInfo. ClamAV adds one more value for cmake-gui: `None`. This toggling is not yet available in the build system of cmake (when building cmake using cmake) - https://gitlab.kitware.com/cmake/cmake/-/issues/26434 . Is it reasonable to have for CMAKE_BUILD_TYPE also `None` as permitted value? I do not know the answer, that is why I am raising this question.
Hmm, Those four are offered by cmake indeed with more or less standard options appropriate to them. I think we can add the `None`, to allow for specific build options provided by the user and nothing more. I will need to read a bit more on this, to see how to implement it.
I consider these NO_… OFF options as confusing, as they involve double negations. Some people, depending on their native language, can consider double negation to mean single negation. Is with NO_A=OFF support for A enabled or disabled? I suggest substituting NO_ with sometihng different, like SUPPORT or USE.
NO_DEV_POLL OFF NO_EPOLL OFF NO_KQUEUE OFF NO_SELECT OFF NO_SIGIO_RT OFF NO_DEV_POLL: No /dev/poll support
I had the same notion as well. I find it a bit confusing indeed but for easier adaptation and to keep same configuration options as before, i kept them as is.
Probably the best is to use the easiest for most of people with positive meaning like "USE_*" or "ENABLE_" and therefore value `ON` means enabled and `OFF` means disabled.
In our case, `NO_DEV_POLL`= `ON` means dev polling is disabled, which is a bit confusing.
If more people agree on this, we can adopt it.
xkaraman left a comment (kamailio/kamailio#4317)
Hey @dilyanpalauzov ,
Can you check https://github.com/xkaraman/kamailio/tree/cmake for the multiple `MODULE_GROUP_NAME` values and verify that it now works as you expected?
`FLAVOUR` was also removed, and the `XSLT_*` options were already fixed in a previous commit, that probably didn't get backported to 6.0 branch.
Still looking into the `None` option for `CMAKE_BUILD_TYPE` though.
dilyanpalauzov left a comment (kamailio/kamailio#4317)
MODULE_GROUP_NAME now can be entered as string. Where are the available group names documented?
dilyanpalauzov left a comment (kamailio/kamailio#4317)
I found https://www.kamailio.org/wikidocs/tutorials/cmake/custom/#module_group_name . Indeed, when I enter invalid name, all possible groups are shown.