[kamailio/kamailio] cmake glitches (Issue #4317)
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. -- Reply to this email directly or view it on GitHub: https://github.com/kamailio/kamailio/issues/4317 You are receiving this because you are subscribed to this thread. Message ID: <kamailio/kamailio/issues/4317@github.com>
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 ``` -- Reply to this email directly or view it on GitHub: https://github.com/kamailio/kamailio/issues/4317#issuecomment-3067158084 You are receiving this because you are subscribed to this thread. Message ID: <kamailio/kamailio/issues/4317/3067158084@github.com>
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. -- Reply to this email directly or view it on GitHub: https://github.com/kamailio/kamailio/issues/4317#issuecomment-3083609563 You are receiving this because you are subscribed to this thread. Message ID: <kamailio/kamailio/issues/4317/3083609563@github.com>
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. -- Reply to this email directly or view it on GitHub: https://github.com/kamailio/kamailio/issues/4317#issuecomment-3102205910 You are receiving this because you are subscribed to this thread. Message ID: <kamailio/kamailio/issues/4317/3102205910@github.com>
dilyanpalauzov left a comment (kamailio/kamailio#4317) MODULE_GROUP_NAME now can be entered as string. Where are the available group names documented? -- Reply to this email directly or view it on GitHub: https://github.com/kamailio/kamailio/issues/4317#issuecomment-3102230249 You are receiving this because you are subscribed to this thread. Message ID: <kamailio/kamailio/issues/4317/3102230249@github.com>
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. -- Reply to this email directly or view it on GitHub: https://github.com/kamailio/kamailio/issues/4317#issuecomment-3102244496 You are receiving this because you are subscribed to this thread. Message ID: <kamailio/kamailio/issues/4317/3102244496@github.com>
henningw left a comment (kamailio/kamailio#4317) Most of the suggestions/remarks here were adapted already in git master branch. If necessary it can be further discussed on the developer mailing list, closing it. -- Reply to this email directly or view it on GitHub: https://github.com/kamailio/kamailio/issues/4317#issuecomment-3125972927 You are receiving this because you are subscribed to this thread. Message ID: <kamailio/kamailio/issues/4317/3125972927@github.com>
Closed #4317 as completed. -- Reply to this email directly or view it on GitHub: https://github.com/kamailio/kamailio/issues/4317#event-18848670003 You are receiving this because you are subscribed to this thread. Message ID: <kamailio/kamailio/issue/4317/issue_event/18848670003@github.com>
dilyanpalauzov left a comment (kamailio/kamailio#4317)
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. … Still looking into the `None` option for `CMAKE_BUILD_TYPE` though.
Is there any conclusion on the `None` option, as it is present in clamav and absent in kamailio for cmake-gui:`CMAKE_BUILD_TYPE`? -- Reply to this email directly or view it on GitHub: https://github.com/kamailio/kamailio/issues/4317#issuecomment-4126437076 You are receiving this because you are subscribed to this thread. Message ID: <kamailio/kamailio/issues/4317/4126437076@github.com>
henningw left a comment (kamailio/kamailio#4317)
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. … Still looking into the `None` option for `CMAKE_BUILD_TYPE` though.
Is there any conclusion on the `None` option, as it is present in clamav and absent in kamailio for cmake-gui:`CMAKE_BUILD_TYPE`?
@dilyanpalauzov There were a lot of changes in cmake for the 6.1 release done. Could you maybe re-test against this version or git master? -- Reply to this email directly or view it on GitHub: https://github.com/kamailio/kamailio/issues/4317#issuecomment-4127528322 You are receiving this because you are subscribed to this thread. Message ID: <kamailio/kamailio/issues/4317/4127528322@github.com>
dilyanpalauzov left a comment (kamailio/kamailio#4317) I first re-tested against git master, then asked the question. -- Reply to this email directly or view it on GitHub: https://github.com/kamailio/kamailio/issues/4317#issuecomment-4127601581 You are receiving this because you are subscribed to this thread. Message ID: <kamailio/kamailio/issues/4317/4127601581@github.com>
participants (3)
-
Henning Westerholt -
Xenofon Karamanos -
Дилян Палаузов