X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=build%2Ftizen%2Fexamples%2FCMakeLists.txt;h=ad3d815e96360c7c366f6d206bdd0cf805c60af0;hb=0ee64499857eac59bf08a1fe4dabe8d4b59513f7;hp=0ea382330abf6c9998fc01603f2f462e572477f7;hpb=8fce756e906d2ccf77219505f16523c514d53f68;p=platform%2Fcore%2Fuifw%2Fdali-demo.git diff --git a/build/tizen/examples/CMakeLists.txt b/build/tizen/examples/CMakeLists.txt index 0ea3823..ad3d815 100644 --- a/build/tizen/examples/CMakeLists.txt +++ b/build/tizen/examples/CMakeLists.txt @@ -1,111 +1,60 @@ 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}) +# 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(SCENE3D_DIR "scene3d") +IF (NOT "${ENABLE_SCENE3D}" ) + IF ( ${SCENE3D_DIR} IN_LIST SUBDIRS ) + LIST( REMOVE_ITEM SUBDIRS ${SCENE3D_DIR} ) + ENDIF() +ENDIF() + +FIND_PROGRAM( SHADER_GENERATOR "dali-shader-generator" ) +IF( NOT SHADER_GENERATOR ) + MESSAGE( FATAL_ERROR "dali-shader-generator not found!" ) +ENDIF() + +FUNCTION(INSTALL_EXAMPLES EXAMPLE) + 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}) +ENDFUNCTION() + +IF( NOT BUILD_EXAMPLE_NAME ) + FOREACH(EXAMPLE ${SUBDIRS}) + INSTALL_EXAMPLES(${EXAMPLE}) + ENDFOREACH(EXAMPLE) +ELSE() + INSTALL_EXAMPLES(${BUILD_EXAMPLE_NAME}) +ENDIF() -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(TEXT_VIEW_SRCS ${EXAMPLES_SRC_DIR}/text-view/text-view-example.cpp) -ADD_EXECUTABLE(text-view.example ${TEXT_VIEW_SRCS}) -TARGET_LINK_LIBRARIES(text-view.example ${REQUIRED_PKGS_LDFLAGS}) -INSTALL(TARGETS text-view.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})