add_subdirectory(cmake/optionalFeatures)
#===========================================================================================================
-# global build flags
+build_flag (WITH_FORCE_COPY "Force Software Copy of Pixmaps (compatibility for VMs)" OFF)
#===========================================================================================================
-build_flag (WITH_FORCE_COPY "Force Software Copy of Pixmaps (compatibility for VMs)" OFF)
-build_flag (WITH_DLT "Build with DLT logging support" OFF)
-build_flag (WITH_STATIC_LIBRARIES "Link all plugins and libraries statically" OFF)
+# no dedicated actions required here
+
+#===========================================================================================================
+build_flag (WITH_DLT "Build with DLT logging support" OFF)
+#===========================================================================================================
+# no dedicated actions required here
+
+#===========================================================================================================
+build_flag (WITH_STATIC_LIBRARIES "Link all plugins and libraries statically" OFF)
+#===========================================================================================================
+# no dedicated actions required here
+
+#===========================================================================================================
+build_flag (WITH_STYLE_CHECKING "Report styleguide problems during build (requires python)" OFF)
+#===========================================================================================================
+if (WITH_STYLE_CHECKING)
+ set(CMAKE_C_COMPILE_OBJECT "${CMAKE_C_COMPILE_OBJECT}; echo 'Checking style...<SOURCE>'; ${CMAKE_SOURCE_DIR}/scripts/check_all_styles.py <SOURCE>")
+ set(CMAKE_CXX_COMPILE_OBJECT "${CMAKE_CXX_COMPILE_OBJECT}; ${CMAKE_SOURCE_DIR}/scripts/check_all_styles.py <SOURCE>")
+endif (WITH_STYLE_CHECKING)
+add_custom_target(check-style COMMAND ${CMAKE_SOURCE_DIR}/scripts/check_style.sh)
+
+#===========================================================================================================
+build_flag (WITH_DOCUMENTATION "Generate documentation during build (requires doxygen)" OFF)
+#===========================================================================================================
+if (WITH_DOCUMENTATION)
+ add_custom_target(doc ALL
+ COMMAND ${CMAKE_SOURCE_DIR}/generate_specification.sh
+ WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
+else (WITH_DOCUMENTATION)
+ add_custom_target(doc
+ COMMAND ${CMAKE_SOURCE_DIR}/generate_specification.sh
+ WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
+endif (WITH_DOCUMENTATION)
#===========================================================================================================
build_flag (WITH_TESTS "Build unit test binaries for all enabled components" OFF)
if (WITH_EGL_EXAMPLE)
add_subdirectory_once (LayerManagerUtils)
add_subdirectory_once (LayerManagerClient/ilmClient)
+ add_subdirectory_once (LayerManagerClient/ilmControl)
add_subdirectory_once (LayerManagerExamples/EGLX11ApplicationExample)
add_subdirectory_once (LayerManagerExamples/EGLX11MockNavigation)
endif(WITH_EGL_EXAMPLE)
if (WITH_CONTROL_BIN)
add_subdirectory_once (LayerManagerUtils)
add_subdirectory_once (LayerManagerClient/ilmClient)
+ add_subdirectory_once (LayerManagerClient/ilmControl)
add_subdirectory_once (LayerManagerControl)
endif(WITH_CONTROL_BIN)
build_flag (WITH_GENERIC_COMMUNICATOR "Build Generic Communicator Plugin based on IpcModules" ON)
#===========================================================================================================
if (WITH_GENERIC_COMMUNICATOR)
+ add_subdirectory_once (LayerManagerUtils)
+ add_subdirectory_once (LayerManagerBase)
add_subdirectory_once (LayerManagerPlugins/IpcModules)
add_subdirectory_once (LayerManagerCommands)
add_subdirectory_once (LayerManagerPlugins/Communicators/GenericCommunicator)
build_flag (WITH_GLX_LIB "Build development library for OpenGL/X11 based renderers" OFF)
#===========================================================================================================
if (WITH_GLX_LIB)
+ add_subdirectory_once (LayerManagerPlugins/Renderers/Graphic)
add_subdirectory_once (LayerManagerPlugins/Renderers/GraphicLib/LayerManagerGraphicGLX)
endif(WITH_GLX_LIB)
build_flag (WITH_WAYLAND_X11_LIB "Build development library for GLES/Wayland X11 based renderers" OFF)
#===========================================================================================================
if (WITH_WAYLAND_X11_LIB)
+ add_subdirectory_once (LayerManagerPlugins/Renderers/Graphic)
add_subdirectory_once (LayerManagerPlugins/Renderers/GraphicLib/LayerManagerGraphicWaylandX11GLESv2)
endif(WITH_WAYLAND_X11_LIB)
build_flag (WITH_WAYLAND_DRM_LIB "Build development library for GLES/Wayland DRM based renderers" OFF)
#===========================================================================================================
if (WITH_WAYLAND_DRM_LIB)
+ add_subdirectory_once (LayerManagerPlugins/Renderers/Graphic)
add_subdirectory_once (LayerManagerPlugins/Renderers/GraphicLib/LayerManagerGraphicWaylandDrmGLESv2)
endif(WITH_WAYLAND_DRM_LIB)
build_flag (WITH_WAYLAND_FBDEV_LIB "Build development library for GLES/Wayland FBDEV based renderers" OFF)
#===========================================================================================================
if (WITH_WAYLAND_FBDEV_LIB)
+ add_subdirectory_once (LayerManagerPlugins/Renderers/Graphic)
add_subdirectory_once (LayerManagerPlugins/Renderers/GraphicLib/LayerManagerGraphicWaylandFbdevGLESv2)
endif(WITH_WAYLAND_FBDEV_LIB)
build_flag (WITH_GLESv2_LIB "Build development library for GLES/X11 based renderers" OFF)
#===========================================================================================================
if (WITH_GLESv2_LIB)
+ add_subdirectory_once (LayerManagerPlugins/Renderers/Graphic)
add_subdirectory_once (LayerManagerPlugins/Renderers/GraphicLib/LayerManagerGraphicGLESv2)
endif(WITH_GLESv2_LIB)
build_flag (WITH_CLIENT_LIB "Build LayerManagement client library" ON)
#===========================================================================================================
if (WITH_CLIENT_LIB)
+ add_subdirectory_once (LayerManagerUtils)
add_subdirectory_once (LayerManagerPlugins/IpcModules)
+ add_subdirectory_once (LayerManagerClient/ilmCommon)
add_subdirectory_once (LayerManagerClient/ilmClient)
endif (WITH_CLIENT_LIB)
#===========================================================================================================
+build_flag (WITH_CONTROL_LIB "Build LayerManagement control library" OFF)
+#===========================================================================================================
+if (WITH_CONTROL_LIB)
+ add_subdirectory_once (LayerManagerUtils)
+ add_subdirectory_once (LayerManagerPlugins/IpcModules)
+ add_subdirectory_once (LayerManagerClient/ilmCommon)
+ add_subdirectory_once (LayerManagerClient/ilmControl)
+endif (WITH_CONTROL_LIB)
+
+#===========================================================================================================
# store used build configuration
#===========================================================================================================
add_subdirectory_once(config)