X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=build%2Ftizen%2Fexamples%2FCMakeLists.txt;h=16922260bc55826b3caeda2307a059e8765f439c;hb=7bd3e6c79df4cce61b68b7e31690bf681d25b455;hp=0b0850d672ea6f1d96b859d2a9e5e9d3bc4bef6c;hpb=1e8cf4e9b7b912503aee6bc3494217e88d13ef52;p=platform%2Fcore%2Fuifw%2Fdali-demo.git diff --git a/build/tizen/examples/CMakeLists.txt b/build/tizen/examples/CMakeLists.txt index 0b0850d..1692226 100644 --- a/build/tizen/examples/CMakeLists.txt +++ b/build/tizen/examples/CMakeLists.txt @@ -1,116 +1,51 @@ SET(EXAMPLES_SRC_DIR ${ROOT_SRC_DIR}/examples) -SET(BLOCKS_SRCS ${EXAMPLES_SRC_DIR}/blocks/blocks-example.cpp) -ADD_EXECUTABLE(blocks.example ${BLOCKS_SRCS}) -TARGET_LINK_LIBRARIES(blocks.example ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS blocks.example DESTINATION ${BINDIR}) - -SET(BUBBLE_EFFECT_SRCS ${EXAMPLES_SRC_DIR}/shader-effect/bubble-effect-example.cpp) -ADD_EXECUTABLE(bubble-effect.example ${BUBBLE_EFFECT_SRCS}) -TARGET_LINK_LIBRARIES(bubble-effect.example ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS bubble-effect.example DESTINATION ${BINDIR}) - -SET(CLUSTER_SRCS ${EXAMPLES_SRC_DIR}/cluster/cluster-example.cpp) -ADD_EXECUTABLE(cluster.example ${CLUSTER_SRCS}) -TARGET_LINK_LIBRARIES(cluster.example ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS cluster.example DESTINATION ${BINDIR}) - -SET(CUBE_TRANSITION_EFFECT_SRCS ${EXAMPLES_SRC_DIR}/transition/cube-transition-effect-example.cpp) -ADD_EXECUTABLE(cube-transition-effect.example ${CUBE_TRANSITION_EFFECT_SRCS}) -TARGET_LINK_LIBRARIES(cube-transition-effect.example ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS cube-transition-effect.example DESTINATION ${BINDIR}) - -SET(DISSOLVE_EFFECT_SRCS ${EXAMPLES_SRC_DIR}/shader-effect/dissolve-effect-example.cpp) -ADD_EXECUTABLE(dissolve-effect.example ${DISSOLVE_EFFECT_SRCS}) -TARGET_LINK_LIBRARIES(dissolve-effect.example ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS dissolve-effect.example DESTINATION ${BINDIR}) - -SET(HELLO_WORLD_SRCS ${EXAMPLES_SRC_DIR}/hello-world/hello-world-example.cpp) -ADD_EXECUTABLE(hello-world.example ${HELLO_WORLD_SRCS}) -TARGET_LINK_LIBRARIES(hello-world.example ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS hello-world.example DESTINATION ${BINDIR}) - -SET(ITEM_VIEW_SRCS ${EXAMPLES_SRC_DIR}/item-view/item-view-example.cpp) -ADD_EXECUTABLE(item-view.example ${ITEM_VIEW_SRCS}) -TARGET_LINK_LIBRARIES(item-view.example ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS item-view.example DESTINATION ${BINDIR}) - -SET(MAGNIFIER_SRCS ${EXAMPLES_SRC_DIR}/magnifier/magnifier-example.cpp) -ADD_EXECUTABLE(magnifier.example ${MAGNIFIER_SRCS}) -TARGET_LINK_LIBRARIES(magnifier.example ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS magnifier.example DESTINATION ${BINDIR}) - -SET(MOTION_BLUR_SRCS ${EXAMPLES_SRC_DIR}/motion/motion-blur-example.cpp) -ADD_EXECUTABLE(motion-blur.example ${MOTION_BLUR_SRCS}) -TARGET_LINK_LIBRARIES(motion-blur.example ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS motion-blur.example DESTINATION ${BINDIR}) - -SET(MOTION_STRETCH_SRCS ${EXAMPLES_SRC_DIR}/motion/motion-stretch-example.cpp) -ADD_EXECUTABLE(motion-stretch.example ${MOTION_STRETCH_SRCS}) -TARGET_LINK_LIBRARIES(motion-stretch.example ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS motion-stretch.example DESTINATION ${BINDIR}) - -SET(NEW_WINDOW_SRCS ${EXAMPLES_SRC_DIR}/new-window/new-window-example.cpp) -ADD_EXECUTABLE(new-window.example ${NEW_WINDOW_SRCS}) -TARGET_LINK_LIBRARIES(new-window.example ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS new-window.example DESTINATION ${BINDIR}) - -SET(PAGE_TURN_VIEW_SRCS ${EXAMPLES_SRC_DIR}/page-turn-view/page-turn-view-example.cpp) -ADD_EXECUTABLE(page-turn-view.example ${PAGE_TURN_VIEW_SRCS}) -TARGET_LINK_LIBRARIES(page-turn-view.example ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS page-turn-view.example DESTINATION ${BINDIR}) - -AUX_SOURCE_DIRECTORY(${EXAMPLES_SRC_DIR}/radial-menu RADIAL_MENU_SRCS) -ADD_EXECUTABLE(radial-menu.example ${RADIAL_MENU_SRCS}) -TARGET_LINK_LIBRARIES(radial-menu.example ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS radial-menu.example DESTINATION ${BINDIR}) - -SET(REFRACTION_EFFECT_SRCS ${EXAMPLES_SRC_DIR}/shader-effect/refraction-effect-example.cpp) -ADD_EXECUTABLE(refraction-effect.example ${REFRACTION_EFFECT_SRCS}) -TARGET_LINK_LIBRARIES(refraction-effect.example ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS refraction-effect.example DESTINATION ${BINDIR}) - -SET(SCROLL_VIEW_SRCS ${EXAMPLES_SRC_DIR}/scroll-view/scroll-view-example.cpp) -ADD_EXECUTABLE(scroll-view.example ${SCROLL_VIEW_SRCS}) -TARGET_LINK_LIBRARIES(scroll-view.example ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS scroll-view.example DESTINATION ${BINDIR}) - -SET(SHADOW_BONE_LIGHTING_SRCS ${EXAMPLES_SRC_DIR}/shadows/shadow-bone-lighting-example.cpp) -ADD_EXECUTABLE(shadow-bone-lighting.example ${SHADOW_BONE_LIGHTING_SRCS}) -TARGET_LINK_LIBRARIES(shadow-bone-lighting.example ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS shadow-bone-lighting.example DESTINATION ${BINDIR}) - -SET(DALI_BUILDER_SRCS ${EXAMPLES_SRC_DIR}/builder/dali-builder.cpp) -ADD_EXECUTABLE(dali-builder ${DALI_BUILDER_SRCS}) -TARGET_LINK_LIBRARIES(dali-builder ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS dali-builder DESTINATION ${BINDIR}) - -SET(BUILDER_SRCS ${EXAMPLES_SRC_DIR}/builder/examples.cpp) -ADD_EXECUTABLE(builder.example ${BUILDER_SRCS}) -TARGET_LINK_LIBRARIES(builder.example ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS builder.example DESTINATION ${BINDIR}) - -SET(IMAGE_SCALING_IRREGULAR_GRID_SRCS ${EXAMPLES_SRC_DIR}/image/image-scaling-irregular-grid/image-scaling-irregular-grid-example.cpp) -ADD_EXECUTABLE(image-scaling-irregular-grid.example ${IMAGE_SCALING_IRREGULAR_GRID_SRCS}) -TARGET_LINK_LIBRARIES(image-scaling-irregular-grid.example ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS image-scaling-irregular-grid.example DESTINATION ${BINDIR}) - -SET(BUTTONS_SRCS ${EXAMPLES_SRC_DIR}/buttons/buttons-example.cpp) -ADD_EXECUTABLE(buttons.example ${BUTTONS_SRCS}) -TARGET_LINK_LIBRARIES(buttons.example ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS buttons.example DESTINATION ${BINDIR}) - -SET(LOGGING_SRCS ${EXAMPLES_SRC_DIR}/logging/logging-example.cpp) -ADD_EXECUTABLE(logging.example ${LOGGING_SRCS}) -TARGET_LINK_LIBRARIES(logging.example ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS logging.example DESTINATION ${BINDIR}) - -SET(TEXT_LABEL_SRCS ${EXAMPLES_SRC_DIR}/text/text-label-example.cpp) -ADD_EXECUTABLE(text-label.example ${TEXT_LABEL_SRCS}) -TARGET_LINK_LIBRARIES(text-label.example ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS text-label.example DESTINATION ${BINDIR}) - -SET(TEXT_LABEL_MULTI_LANGUAGE_SRCS ${EXAMPLES_SRC_DIR}/text/text-label-multi-language-example.cpp ${EXAMPLES_SRC_DIR}/text/vertical-layout.cpp ${EXAMPLES_SRC_DIR}/text/vertical-layout-impl.cpp) -ADD_EXECUTABLE(text-label-multi-language.example ${TEXT_LABEL_MULTI_LANGUAGE_SRCS}) -TARGET_LINK_LIBRARIES(text-label-multi-language.example ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS text-label-multi-language.example DESTINATION ${BINDIR}) +# Get all subdirectory names from EXAMPLES_SRC_DIR +MACRO(SUBDIRLIST result curdir) + FILE(GLOB children RELATIVE ${curdir} ${curdir}/*) + SET(dirlist "") + FOREACH(child ${children}) + IF(IS_DIRECTORY ${curdir}/${child}) + LIST(APPEND dirlist ${child}) + ENDIF() + ENDFOREACH() + SET(${result} ${dirlist}) +ENDMACRO() +SUBDIRLIST(SUBDIRS ${EXAMPLES_SRC_DIR}) + +SET(SCENE_LOADER_DIR "scene-loader") +IF (NOT "${ENABLE_SCENE_LOADER}" ) + IF ( ${SCENE_LOADER_DIR} IN_LIST SUBDIRS ) + LIST( REMOVE_ITEM SUBDIRS ${SCENE_LOADER_DIR} ) + ENDIF() +ENDIF() + +FIND_PROGRAM( SHADER_GENERATOR "dali-shader-generator" ) +IF( NOT SHADER_GENERATOR ) + MESSAGE( FATAL_ERROR "dali-shader-generator not found!" ) +ENDIF() + +FOREACH(EXAMPLE ${SUBDIRS}) + SET(PARENT_CMAKE_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../") + FILE(GLOB SRCS "${EXAMPLES_SRC_DIR}/${EXAMPLE}/*.cpp") + SET(SRCS ${SRCS} "${ROOT_SRC_DIR}/shared/resources-location.cpp") + IF(SHARED) + ADD_LIBRARY(${EXAMPLE}.example SHARED ${SRCS}) + ELSE() + ADD_EXECUTABLE(${EXAMPLE}.example ${SRCS}) + ENDIF() + + # Generate source files for shaders + SET(SHADER_SOURCE_DIR "${EXAMPLES_SRC_DIR}/${EXAMPLE}/shaders/") + IF (EXISTS ${SHADER_SOURCE_DIR}) + SET(SHADER_GENERATED_DIR "${EXAMPLES_SRC_DIR}/${EXAMPLE}/generated/") + ADD_CUSTOM_TARGET(${EXAMPLE}-generate-shaders + COMMAND ${SHADER_GENERATOR} --skip ${SHADER_SOURCE_DIR} ${SHADER_GENERATED_DIR}) + SET_PROPERTY(DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES + "${SHADER_GENERATED_DIR}") + ADD_DEPENDENCIES(${EXAMPLE}.example ${EXAMPLE}-generate-shaders) + ENDIF() + + TARGET_LINK_LIBRARIES(${EXAMPLE}.example ${REQUIRED_LIBS}) + INSTALL(TARGETS ${EXAMPLE}.example DESTINATION ${BINDIR}) +ENDFOREACH(EXAMPLE)