Add AnimatedVectorImageVisual example
[platform/core/uifw/dali-demo.git] / build / tizen / CMakeLists.txt
index 5147cb3..08f1a79 100644 (file)
@@ -5,53 +5,137 @@ SET(dali-demo_VERSION_MAJOR 1)
 SET(dali-demo_VERSION_MINOR 0)
 
 SET(ROOT_SRC_DIR ${CMAKE_SOURCE_DIR}/../..)
+SET(DEMO_SHARED ${CMAKE_SOURCE_DIR}/../../shared)
 
 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
 
 IF(DEFINED DALI_APP_DIR)
-        SET(APP_DATA_DIR ${DALI_APP_DIR})
-        SET(BINDIR ${APP_DATA_DIR}/bin)
+        SET(BINDIR ${DALI_APP_DIR}/bin)
 ELSE()
-        SET(APP_DATA_DIR ${PREFIX}/share/com.samsung.dali-demo)
         SET(BINDIR ${PREFIX}/bin)
 ENDIF()
 
-SET(LOCAL_IMAGES_DIR ${ROOT_SRC_DIR}/demo/images)
-SET(LOCAL_MODELS_DIR ${ROOT_SRC_DIR}/demo/models)
-SET(LOCAL_SCRIPTS_DIR ${ROOT_SRC_DIR}/demo/scripts)
+IF(DEFINED DALI_APP_RES_DIR)
+        SET(APP_DATA_RES_DIR ${DALI_APP_RES_DIR})
+ELSE()
+        SET(APP_DATA_RES_DIR ${PREFIX}/share/com.samsung.dali-demo/res)
+ENDIF()
 
-SET(IMAGES_DIR ${APP_DATA_DIR}/images/)
-SET(MODELS_DIR ${APP_DATA_DIR}/models/)
-SET(SCRIPTS_DIR ${APP_DATA_DIR}/scripts/)
+MESSAGE( STATUS "CMAKE_BUILD_TYPE: " ${CMAKE_BUILD_TYPE} )
+if(CMAKE_BUILD_TYPE MATCHES Debug)
+    MESSAGE("Setting variable: DEBUG_ENABLED")
+    SET(DEBUG_ENABLED "1")
+ENDIF()
 
-SET(DALI_IMAGE_DIR \\"${IMAGES_DIR}\\")
-SET(DALI_MODEL_DIR \\"${MODELS_DIR}\\")
-SET(DALI_SCRIPT_DIR \\"${SCRIPTS_DIR}\\")
-SET(DALI_EXAMPLE_BIN \\"${BINDIR}/\\")
+SET(RESOURCE_DIR ${ROOT_SRC_DIR}/resources)
+SET(LOCAL_IMAGES_DIR ${RESOURCE_DIR}/images)
+SET(LOCAL_GAME_DIR ${RESOURCE_DIR}/game)
+SET(LOCAL_VIDEOS_DIR ${RESOURCE_DIR}/videos)
+SET(LOCAL_MODELS_DIR ${RESOURCE_DIR}/models)
+SET(LOCAL_SCRIPTS_DIR ${RESOURCE_DIR}/scripts)
+SET(LOCAL_SHADERS_DIR ${RESOURCE_DIR}/shaders)
+IF(NOT DEFINED LOCAL_STYLE_DIR)
+        SET(LOCAL_STYLE_DIR ${RESOURCE_DIR}/style)
+ENDIF()
+
+SET(IMAGES_DIR ${APP_DATA_RES_DIR}/images/)
+SET(GAME_DIR ${APP_DATA_RES_DIR}/game/)
+SET(VIDEOS_DIR ${APP_DATA_RES_DIR}/videos/)
+SET(MODELS_DIR ${APP_DATA_RES_DIR}/models/)
+SET(SCRIPTS_DIR ${APP_DATA_RES_DIR}/scripts/)
+SET(SHADERS_DIR ${APP_DATA_RES_DIR}/shaders/)
+SET(STYLE_DIR ${APP_DATA_RES_DIR}/style/)
+
+IF(NOT DEFINED LOCALE_DIR)
+        SET(LOCALE_DIR ${PREFIX}/share/locale)
+ENDIF()
 
-FILE(GLOB LOCAL_IMAGES_PNG RELATIVE "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.png")
-FILE(GLOB LOCAL_IMAGES_JPG RELATIVE "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.jpg")
-FILE(GLOB LOCAL_IMAGES_GIF RELATIVE "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.gif")
-FILE(GLOB LOCAL_IMAGES_BMP RELATIVE "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.bmp")
-FILE(GLOB LOCAL_IMAGES_ICO RELATIVE "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.ico")
+SET(DEMO_GAME_DIR \\"${GAME_DIR}\\")
+SET(DEMO_IMAGE_DIR \\"${IMAGES_DIR}\\")
+SET(DEMO_VIDEO_DIR \\"${VIDEOS_DIR}\\")
+SET(DEMO_MODEL_DIR \\"${MODELS_DIR}\\")
+SET(DEMO_SCRIPT_DIR \\"${SCRIPTS_DIR}\\")
+SET(DEMO_SHADER_DIR \\"${SHADERS_DIR}\\")
+SET(DEMO_STYLE_DIR \\"${STYLE_DIR}\\")
+SET(DEMO_THEME_PATH \\"${STYLE_DIR}demo-theme.json\\")
+SET(DEMO_EXAMPLE_BIN \\"${BINDIR}/\\")
+SET(DEMO_LOCALE_DIR \\"${LOCALE_DIR}\\")
+SET(DEMO_LANG \\"${LANG}\\")
+
+SET(DEMO_STYLE_IMAGE_DIR ${STYLE_DIR}/images)
+
+FILE(GLOB LOCAL_IMAGES_PNG RELATIVE  "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.png")
+FILE(GLOB LOCAL_IMAGES_JPG RELATIVE  "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.jpg")
+FILE(GLOB LOCAL_IMAGES_GIF RELATIVE  "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.gif")
+FILE(GLOB LOCAL_IMAGES_BMP RELATIVE  "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.bmp")
+FILE(GLOB LOCAL_IMAGES_ICO RELATIVE  "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.ico")
 FILE(GLOB LOCAL_IMAGES_WBMP RELATIVE "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.wbmp")
+FILE(GLOB LOCAL_IMAGES_KTX RELATIVE  "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.ktx")
+FILE(GLOB LOCAL_IMAGES_ASTC RELATIVE "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.astc")
+FILE(GLOB LOCAL_IMAGES_SVG RELATIVE  "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.svg")
+FILE(GLOB LOCAL_IMAGES_JSON RELATIVE  "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.json")
 
-SET(LOCAL_IMAGES_LIST ${LOCAL_IMAGES_PNG};${LOCAL_IMAGES_JPG};${LOCAL_IMAGES_GIF};${LOCAL_IMAGES_BMP};${LOCAL_IMAGES_ICO};${LOCAL_IMAGES_WBMP})
+SET(LOCAL_IMAGES_LIST ${LOCAL_IMAGES_PNG};${LOCAL_IMAGES_JPG};${LOCAL_IMAGES_GIF};${LOCAL_IMAGES_BMP};${LOCAL_IMAGES_ICO};${LOCAL_IMAGES_WBMP};${LOCAL_IMAGES_KTX};${LOCAL_IMAGES_ASTC};${LOCAL_IMAGES_SVG};${LOCAL_IMAGES_JSON})
 FOREACH(flag ${LOCAL_IMAGES_LIST})
-        INSTALL(FILES ../../demo/images/${flag} DESTINATION ${IMAGES_DIR})
+        INSTALL(FILES ${LOCAL_IMAGES_DIR}/${flag} DESTINATION ${IMAGES_DIR})
+ENDFOREACH(flag)
+
+FILE(GLOB LOCAL_VIDEOS_LIST RELATIVE "${LOCAL_VIDEOS_DIR}" "${LOCAL_VIDEOS_DIR}/*")
+FOREACH(flag ${LOCAL_VIDEOS_LIST})
+        INSTALL(FILES ${LOCAL_VIDEOS_DIR}/${flag} DESTINATION ${VIDEOS_DIR})
 ENDFOREACH(flag)
 
 FILE(GLOB LOCAL_MODELS_LIST RELATIVE "${LOCAL_MODELS_DIR}" "${LOCAL_MODELS_DIR}/*")
 FOREACH(flag ${LOCAL_MODELS_LIST})
-        INSTALL(FILES ../../demo/models/${flag} DESTINATION ${MODELS_DIR})
+        INSTALL(FILES ${LOCAL_MODELS_DIR}/${flag} DESTINATION ${MODELS_DIR})
 ENDFOREACH(flag)
 
-FILE(GLOB LOCAL_SCRIPTS_LIST RELATIVE "${LOCAL_SCRIPTS_DIR}" "${LOCAL_SCRIPTS_DIR}/*")
+FILE(GLOB LOCAL_SCRIPTS_LIST RELATIVE "${LOCAL_SCRIPTS_DIR}" "${LOCAL_SCRIPTS_DIR}/*.json")
 FOREACH(flag ${LOCAL_SCRIPTS_LIST})
-        INSTALL(FILES ../../demo/scripts/${flag} DESTINATION ${SCRIPTS_DIR})
+        INSTALL(FILES ${LOCAL_SCRIPTS_DIR}/${flag} DESTINATION ${SCRIPTS_DIR})
+ENDFOREACH(flag)
+
+FILE(GLOB LOCAL_SHADERS_LIST RELATIVE "${LOCAL_SHADERS_DIR}" "${LOCAL_SHADERS_DIR}/*")
+FOREACH(flag ${LOCAL_SHADERS_LIST})
+        INSTALL(FILES ${LOCAL_SHADERS_DIR}/${flag} DESTINATION ${SHADERS_DIR})
 ENDFOREACH(flag)
 
-SET(PKG_LIST dali
+FILE(GLOB LOCAL_GAME_LIST RELATIVE "${LOCAL_GAME_DIR}" "${LOCAL_GAME_DIR}/*.*")
+FOREACH(flag ${LOCAL_GAME_LIST})
+        INSTALL(FILES ${LOCAL_GAME_DIR}/${flag} DESTINATION ${GAME_DIR})
+ENDFOREACH(flag)
+
+#Create resources location file
+CONFIGURE_FILE( resources-location.in ${DEMO_SHARED}/resources-location.cpp )
+
+#Replace @DEMO_STYLE_IMAGE_DIR@ in following files
+CONFIGURE_FILE( ${LOCAL_STYLE_DIR}/demo-theme.json.in ${LOCAL_STYLE_DIR}/demo-theme.json )
+CONFIGURE_FILE( ${LOCAL_STYLE_DIR}/animated-gradient-call-active-style.json.in ${LOCAL_STYLE_DIR}/animated-gradient-call-active-style.json )
+CONFIGURE_FILE( ${LOCAL_STYLE_DIR}/contact-cards-example-theme.json.in ${LOCAL_STYLE_DIR}/contact-cards-example-theme.json )
+CONFIGURE_FILE( ${LOCAL_STYLE_DIR}/progress-bar-example-theme.json.in ${LOCAL_STYLE_DIR}/progress-bar-example-theme.json )
+CONFIGURE_FILE( ${LOCAL_STYLE_DIR}/simple-example-theme.json.in ${LOCAL_STYLE_DIR}/simple-example-theme.json )
+CONFIGURE_FILE( ${LOCAL_STYLE_DIR}/style-example-theme-one.json.in ${LOCAL_STYLE_DIR}/style-example-theme-one.json )
+CONFIGURE_FILE( ${LOCAL_STYLE_DIR}/style-example-theme-two.json.in ${LOCAL_STYLE_DIR}/style-example-theme-two.json )
+CONFIGURE_FILE( ${LOCAL_STYLE_DIR}/style-example-theme-three.json.in ${LOCAL_STYLE_DIR}/style-example-theme-three.json )
+CONFIGURE_FILE( ${LOCAL_STYLE_DIR}/tooltip-example-theme.json.in ${LOCAL_STYLE_DIR}/tooltip-example-theme.json )
+CONFIGURE_FILE( ${LOCAL_STYLE_DIR}/basic-light-theme.json.in ${LOCAL_STYLE_DIR}/basic-light-theme.json )
+CONFIGURE_FILE( ${LOCAL_STYLE_DIR}/text-editor-example-theme.json.in ${LOCAL_STYLE_DIR}/text-editor-example-theme.json )
+MESSAGE("Configured ${LOCAL_STYLE_DIR}/style-example-theme<>.json files")
+
+FILE(GLOB LOCAL_STYLES_LIST "${LOCAL_STYLE_DIR}/*.json")
+FOREACH(flag ${LOCAL_STYLES_LIST})
+  INSTALL(FILES ${flag} DESTINATION ${STYLE_DIR})
+ENDFOREACH(flag)
+MESSAGE("Installed ${LOCAL_STYLES_LIST} to ${STYLE_DIR}")
+
+FILE(GLOB LOCAL_STYLE_IMAGES_LIST "${LOCAL_STYLE_DIR}/images/*.png")
+FOREACH(flag ${LOCAL_STYLE_IMAGES_LIST})
+  INSTALL(FILES ${flag} DESTINATION ${STYLE_DIR}/images)
+ENDFOREACH(flag)
+MESSAGE("Installed style resources ${LOCAL_STYLE_IMAGES_LIST} to ${STYLE_DIR}/images")
+
+SET(PKG_LIST dali-core
+             dali-adaptor
              dali-toolkit)
 
 INCLUDE(FindPkgConfig)
@@ -61,13 +145,53 @@ FOREACH(flag ${REQUIRED_PKGS_CFLAGS})
         SET(REQUIRED_CFLAGS "${REQUIRED_CFLAGS} ${flag}")
 ENDFOREACH(flag)
 
-SET(DALI_DEMO_CFLAGS "-DDALI_IMAGE_DIR=${DALI_IMAGE_DIR} -DDALI_MODEL_DIR=${DALI_MODEL_DIR} -DDALI_SCRIPT_DIR=${DALI_SCRIPT_DIR} -DDALI_EXAMPLE_BIN=${DALI_EXAMPLE_BIN} -fvisibility=hidden -DHIDE_DALI_INTERNALS")
+SET(DALI_DEMO_CFLAGS "-DDEMO_GAME_DIR=${DEMO_GAME_DIR} -DDEMO_IMAGE_DIR=${DEMO_IMAGE_DIR} -DDEMO_VIDEO_DIR=${DEMO_VIDEO_DIR} -DDEMO_MODEL_DIR=${DEMO_MODEL_DIR} -DDEMO_SCRIPT_DIR=${DEMO_SCRIPT_DIR} -DDEMO_SHADER_DIR=${DEMO_SHADER_DIR}  -DDEMO_STYLE_DIR=${DEMO_STYLE_DIR} -DDEMO_THEME_PATH=${DEMO_THEME_PATH} -DDEMO_EXAMPLE_BIN=${DEMO_EXAMPLE_BIN} -DDEMO_LOCALE_DIR=${DEMO_LOCALE_DIR} -fvisibility=hidden -DHIDE_DALI_INTERNALS -DDEMO_LANG=${DEMO_LANG}")
+
+IF(DEFINED DEBUG_ENABLED)
+  SET(DALI_DEMO_CFLAGS "${DALI_DEMO_CFLAGS} -DDEBUG_ENABLED")
+ENDIF()
+
+###########################################################################
+# Internationalization
+
+SET(PO_DIR ${RESOURCE_DIR}/po)
+
+FILE(GLOB PO_FILES RELATIVE "${PO_DIR}" "${PO_DIR}/*.po")
+
+SET(MSGFMT "/usr/bin/msgfmt")
+SET(MO_FILES_DIR ${CMAKE_BINARY_DIR}/mo)
+FILE(MAKE_DIRECTORY ${MO_FILES_DIR})
+
+FOREACH(PO_FILE ${PO_FILES})
+        SET(PO_FILE ${PO_DIR}/${PO_FILE})
+        MESSAGE("PO: ${PO_FILE}")
+        GET_FILENAME_COMPONENT(ABS_PO_FILE ${PO_FILE} ABSOLUTE)
+        GET_FILENAME_COMPONENT(lang ${ABS_PO_FILE} NAME_WE)
+        SET(MO_FILE ${MO_FILES_DIR}/${lang}.mo)
+        ADD_CUSTOM_COMMAND(OUTPUT ${MO_FILE}
+                           COMMAND ${MSGFMT} -o ${MO_FILE} ${ABS_PO_FILE}
+                           DEPENDS ${ABS_PO_FILE})
+        INSTALL(FILES ${MO_FILE} DESTINATION ${LOCALE_DIR}/${lang}/LC_MESSAGES RENAME ${PROJECT_NAME}.mo)
+        SET(MO_FILES ${MO_FILES} ${MO_FILE})
+ENDFOREACH(PO_FILE)
+
+MESSAGE(".mo files: ${MO_FILES}")
+ADD_CUSTOM_TARGET(po ALL DEPENDS ${MO_FILES})
+
+OPTION(INTERNATIONALIZATION "Internationalization demo string names" ON)
+IF (INTERNATIONALIZATION)
+        SET(DALI_DEMO_CFLAGS "${DALI_DEMO_CFLAGS} -DINTERNATIONALIZATION_ENABLED")
+ENDIF(INTERNATIONALIZATION)
+
+###########################################################################
 
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${REQUIRED_CFLAGS} ${DALI_DEMO_CFLAGS} -Werror -Wall")
-SET(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS}")
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${REQUIRED_CFLAGS} ${DALI_DEMO_CFLAGS} -Werror -Wall -fPIE")
+SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_C_FLAGS}")
 
 INCLUDE_DIRECTORIES(${ROOT_SRC_DIR})
-INCLUDE_DIRECTORIES(${DEMO_SRC_DIR})
 
 ADD_SUBDIRECTORY(demo)
 ADD_SUBDIRECTORY(examples)
+ADD_SUBDIRECTORY(examples-reel)
+ADD_SUBDIRECTORY(tests-reel)
+ADD_SUBDIRECTORY(builder)