[Kde-bindings] [PATCH] [CMake] Smoke, Ruby, CSharp - flexible handling of what to build and what not to

Maciej Mrozowski reavertm at gmail.com
Sun May 9 23:44:46 UTC 2010


Ok, here's another patch, to unify enabling of bindings.

- add macro  macro_optional_add_bindings(<component_found> <component_name> 
<subdir1> [<subdir2> ...])
# Conditionally enable bindings.
# Pass -DDISABLE_<component_name>=ON to disable certain binding even if its 
dependencies are found.
# CMake project needs to be set before using this macro.
# Macro sets following variables:
#     ${CMAKE_PROJECT_NAME}_ENABLED - list of enabled bindings
#     ${CMAKE_PROJECT_NAME}_DISABLED - list of disabled bindings
# Usage:
#     macro_optional_add_bindings(<component_found> <component_name> <subdir1> 
[<subdir2> ...])
project() needs to be set (preferably in the same scope as macro invocations)

- add macro macro_display_bindings_log()
# Show bindings summary
# Usage:
#     macro_display_bindings_log()
Simple bindings summary, feel free to extend it in a future if you like.

- use them in Smoke, Ruby, CSharp
I unified component names in all bindings, so that -DDISABLE_QtWebkit=ON will 
disable WebKit bindings for all languages, etc.

Could someone test how does it work for Ruby bindings? (because I don't have 
means to test it here).

I think ideally, maybe in a future, all macro_optional_find_package could be 
change back to find_package (to avoid generating CMake options with no obvious 
semantics - because they refer to dependencies) and just use:
-DDISABLE_<component>=ON to control bindings

Anyway, comments?

-- 
regards
MM
-------------- next part --------------
A non-text attachment was scrubbed...
Name: kdebindings.diff
Type: text/x-patch
Size: 19636 bytes
Desc: not available
URL: <http://mail.kde.org/pipermail/kde-bindings/attachments/20100510/77ae4457/attachment.diff>


More information about the Kde-bindings mailing list