[dali_1.1.23] Merge branch 'devel/master'
[platform/core/uifw/dali-demo.git] / build / tizen / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(dali-demo C CXX)
3
4 SET(dali-demo_VERSION_MAJOR 1)
5 SET(dali-demo_VERSION_MINOR 0)
6
7 SET(ROOT_SRC_DIR ${CMAKE_SOURCE_DIR}/../..)
8
9 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
10
11 IF(DEFINED DALI_APP_DIR)
12         SET(APP_DATA_DIR ${DALI_APP_DIR})
13         SET(BINDIR ${APP_DATA_DIR}/bin)
14 ELSE()
15         SET(APP_DATA_DIR ${PREFIX}/share/com.samsung.dali-demo)
16         SET(BINDIR ${PREFIX}/bin)
17
18         # Directory for compiled Emscripten artifacts along with Emscripten examples and demos.
19         SET(EMSCRIPTEN_ENV_DIR ${APP_DATA_DIR}/../emscripten/)
20         SET(EMSCRIPTEN_EXAMPLE_DIR ${ROOT_SRC_DIR}/emscripten-examples/)
21 ENDIF()
22
23
24 SET(RESOURCE_DIR ${ROOT_SRC_DIR}/resources)
25 SET(LOCAL_IMAGES_DIR ${RESOURCE_DIR}/images)
26 SET(LOCAL_MODELS_DIR ${RESOURCE_DIR}/models)
27 SET(LOCAL_SCRIPTS_DIR ${RESOURCE_DIR}/scripts)
28 IF(NOT DEFINED LOCAL_STYLE_DIR)
29         SET(LOCAL_STYLE_DIR ${RESOURCE_DIR}/style)
30 ENDIF()
31
32 SET(IMAGES_DIR ${APP_DATA_DIR}/images/)
33 SET(MODELS_DIR ${APP_DATA_DIR}/models/)
34 SET(SCRIPTS_DIR ${APP_DATA_DIR}/scripts/)
35 SET(STYLE_DIR ${APP_DATA_DIR}/style/)
36
37 IF(NOT DEFINED LOCALE_DIR)
38         SET(LOCALE_DIR ${PREFIX}/share/locale)
39 ENDIF()
40
41 SET(DEMO_IMAGE_DIR \\"${IMAGES_DIR}\\")
42 SET(DEMO_MODEL_DIR \\"${MODELS_DIR}\\")
43 SET(DEMO_SCRIPT_DIR \\"${SCRIPTS_DIR}\\")
44 SET(DEMO_STYLE_DIR \\"${STYLE_DIR}\\")
45 SET(DEMO_THEME_PATH \\"${STYLE_DIR}/demo-theme.json\\")
46 SET(DEMO_EXAMPLE_BIN \\"${BINDIR}/\\")
47 SET(DEMO_LOCALE_DIR \\"${LOCALE_DIR}\\")
48 SET(DEMO_LANG \\"${LANG}\\")
49
50 FILE(GLOB LOCAL_IMAGES_PNG RELATIVE  "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.png")
51 FILE(GLOB LOCAL_IMAGES_JPG RELATIVE  "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.jpg")
52 FILE(GLOB LOCAL_IMAGES_GIF RELATIVE  "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.gif")
53 FILE(GLOB LOCAL_IMAGES_BMP RELATIVE  "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.bmp")
54 FILE(GLOB LOCAL_IMAGES_ICO RELATIVE  "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.ico")
55 FILE(GLOB LOCAL_IMAGES_WBMP RELATIVE "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.wbmp")
56 FILE(GLOB LOCAL_IMAGES_KTX RELATIVE  "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.ktx")
57 FILE(GLOB LOCAL_IMAGES_ASTC RELATIVE "${LOCAL_IMAGES_DIR}" "${LOCAL_IMAGES_DIR}/*.astc")
58
59 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})
60 FOREACH(flag ${LOCAL_IMAGES_LIST})
61         INSTALL(FILES ${LOCAL_IMAGES_DIR}/${flag} DESTINATION ${IMAGES_DIR})
62 ENDFOREACH(flag)
63
64 FILE(GLOB LOCAL_MODELS_LIST RELATIVE "${LOCAL_MODELS_DIR}" "${LOCAL_MODELS_DIR}/*")
65 FOREACH(flag ${LOCAL_MODELS_LIST})
66         INSTALL(FILES ${LOCAL_MODELS_DIR}/${flag} DESTINATION ${MODELS_DIR})
67 ENDFOREACH(flag)
68
69 FILE(GLOB LOCAL_SCRIPTS_LIST RELATIVE "${LOCAL_SCRIPTS_DIR}" "${LOCAL_SCRIPTS_DIR}/*")
70 FOREACH(flag ${LOCAL_SCRIPTS_LIST})
71         INSTALL(FILES ${LOCAL_SCRIPTS_DIR}/${flag} DESTINATION ${SCRIPTS_DIR})
72 ENDFOREACH(flag)
73
74 #Replace @DEMO_STYLE_IMAGE_DIR@ in following files
75 SET(DEMO_STYLE_IMAGE_DIR ${IMAGES_DIR})
76 CONFIGURE_FILE( ${LOCAL_STYLE_DIR}/demo-theme.json.in ${LOCAL_STYLE_DIR}/demo-theme.json )
77 INSTALL(FILES ${LOCAL_STYLE_DIR}/demo-theme.json DESTINATION ${STYLE_DIR})
78
79 SET(PKG_LIST dali-core
80              dali-adaptor
81              dali-toolkit)
82
83 INCLUDE(FindPkgConfig)
84 pkg_check_modules(REQUIRED_PKGS REQUIRED ${PKG_LIST})
85
86 FOREACH(flag ${REQUIRED_PKGS_CFLAGS})
87         SET(REQUIRED_CFLAGS "${REQUIRED_CFLAGS} ${flag}")
88 ENDFOREACH(flag)
89
90 SET(DALI_DEMO_CFLAGS "-DDEMO_IMAGE_DIR=${DEMO_IMAGE_DIR} -DDEMO_MODEL_DIR=${DEMO_MODEL_DIR} -DDEMO_SCRIPT_DIR=${DEMO_SCRIPT_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}")
91
92 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${REQUIRED_CFLAGS} ${DALI_DEMO_CFLAGS} -Werror -Wall")
93 SET(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS}")
94
95 INCLUDE_DIRECTORIES(${ROOT_SRC_DIR})
96 INCLUDE_DIRECTORIES(${DEMO_SRC_DIR})
97
98 ADD_SUBDIRECTORY(demo)
99 ADD_SUBDIRECTORY(examples)
100 ADD_SUBDIRECTORY(builder)
101
102 IF(NOT DEFINED DALI_APP_DIR)
103         FILE( MAKE_DIRECTORY ${EMSCRIPTEN_ENV_DIR} )
104         CONFIGURE_FILE( ${EMSCRIPTEN_EXAMPLE_DIR}/dali-toy.js ${EMSCRIPTEN_ENV_DIR}/ )
105         CONFIGURE_FILE( ${EMSCRIPTEN_EXAMPLE_DIR}/dali-toy.html ${EMSCRIPTEN_ENV_DIR}/ )
106         CONFIGURE_FILE( ${EMSCRIPTEN_EXAMPLE_DIR}/dali-doc-demo.html ${EMSCRIPTEN_ENV_DIR}/ )
107 ENDIF()