Review Request: Build kwin and kwin_gles binary

Alexander Neundorf neundorf at kde.org
Sun Jul 17 21:41:09 CEST 2011


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/101979/#review4774
-----------------------------------------------------------


Not sure I would make KWIN_KDEINIT_BACKEND() a macro.
It looks like you could get the same also without a macro (the name KWIN_KDEINIT_BACKEND() is not that self-explaining that you immediately know what it does, in the first moment there is just the add_executable()/add_library() call not there).
You could do something like

if(FOO)
  set(kwinLibs ${kwinLibs} ${FOO_LIBRARIES})
endif()
...
kde4_add_executable(kwin ...)
target_link_libraries(kwin ${kwinLibs} )
...
kde4_add_executable(kwin_gles ...)
target_link_libraries(kwin_gles ${kwinLibs} )

This would make the file less "custom" looking, so probably easier approachable for outsiders/newbies.

The KWIN4_GLUTILS_BACKEND(), well, as for proper naming things, macros/functions should have a verb, so I'd make it KWIN4_ADD_GLUTILS_BACKEND() as you already do for the  other macro you have.

Alex

- Alexander


On July 17, 2011, 6 p.m., Martin Gräßlin wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/101979/
> -----------------------------------------------------------
> 
> (Updated July 17, 2011, 6 p.m.)
> 
> 
> Review request for kwin, Plasma and Alexander Neundorf.
> 
> 
> Summary
> -------
> 
> Major build system change: everything is compiled twice, once with OpenGL (if present) and once with OpenGL ES (if present). To better support this kwinglutils becomes an own library and is splitted out of the kwineffects library. It is build once as kwinglutils and once as kwinglesutils.
> 
> The effects are built twice into a kwin4_effect_builtins and kwin4_effect_gles_builtin. And last but not least we build a kwin and a kwin_gles.
> 
> The last part I consider as a temporary solution till Arthur finished the part of making scene* completely independent from kwin core. When that is done I want to only compile the compositor twice and load it as a plugin depending on the result of an external test program (so that NVIDIA users cannot get trying to load the non working GLES).
> 
> The change to compile everything twice is for the following reasons:
> 
> 1. Should make life easier for distributions to provide kwin_gles
> 
> 2. To have the Wayland support only in kwin_gles (does not make sense in kwin+desktop GL)
> 
> 3. To make testing easier by just starting kwin --replace and kwin_gles --replace
> 
> 
> Current issues and things I want to do:
> 
> * kwineffects still links libGL as it provides a check whether GLX is available. I think this one can be dropped (should only be used at one place in scene)
> 
> * Add another marco to ensure that kwin+gl cannot load GLES effects and vice versa
> 
> * Clean up the build files
> 
> * think about whether we need XRender when building the gles backend
> 
> 
> @Alex: it would be nice if you could have a look at the changes and if they look fine.
> 
> @Plasma: Please have a look whether there is something useful for Plasma Active - the patches should (mostly) apply to 4.7
> 
> 
> Diffs
> -----
> 
>   kwin/libkwineffects/kwinconfig.h.cmake 22405a5 
>   kwin/effects.cpp 143b033 
>   kwin/effects/CMakeLists.txt 8683b35 
>   kwin/effects/logout/logout.cpp d0a5c1d 
>   kwin/effects/showfps/showfps.h 8834956 
>   kwin/effects/showfps/showfps_config.h b184622 
>   kwin/effects/showfps/showfps_config.cpp dcbe93b 
>   kwin/kcmkwin/kwincompositing/CMakeLists.txt 57d7750 
>   kwin/kcmkwin/kwinscreenedges/CMakeLists.txt 94e841c 
>   kwin/libkwineffects/CMakeLists.txt cb9703b 
>   kwin/CMakeLists.txt 4859978 
> 
> Diff: http://git.reviewboard.kde.org/r/101979/diff
> 
> 
> Testing
> -------
> 
> * kwin works with OpenGL and only loads the desktop GL effects
> * kwin_gles works with OpenGL ES and only loads the GLES effects
> 
> 
> Thanks,
> 
> Martin
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.kde.org/pipermail/plasma-devel/attachments/20110717/90b81013/attachment.htm 


More information about the Plasma-devel mailing list