Fix versioning
[platform/core/uifw/widget-viewer-dali.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(widget_viewer_dali CXX)
3
4 SET(PREFIX "${CMAKE_INSTALL_PREFIX}")
5 SET(EXEC_PREFIX "\${prefix}")
6 SET(PROJECT_NAME "${PROJECT_NAME}")
7 SET(LIBDIR ${LIB_INSTALL_DIR})
8 SET(INCLUDEDIR "\${prefix}/include/${PROJECT_NAME}")
9 SET(VERSION_MAJOR "${MAJORVER}")
10 SET(VERSION "${FULLVER}")
11
12 INCLUDE(FindPkgConfig)
13 pkg_check_modules(viewer_dali REQUIRED
14         dlog
15         widget_service
16         pkgmgr-info
17         capi-system-info
18         dali-adaptor
19         dali-toolkit
20         cynara-client
21         ecore-input
22         tizen-remote-surface-client
23         screen_connector_watcher
24 )
25
26 SET(BUILD_SOURCE
27         public_api/widget_view/widget_view.cpp
28         public_api/widget_view_manager/widget_view_manager.cpp
29         internal/widget_view/widget_view_impl.cpp
30         internal/widget_view_manager/widget_view_manager_impl.cpp
31 )
32
33 FOREACH(flag ${viewer_dali_CFLAGS})
34         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
35 ENDFOREACH(flag)
36 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden -DHIDE_DALI_INTERNALS -Wall -Werror -Winline -g")
37
38 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
39 SET(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS}")
40 SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
41 SET(CMAKE_C_FLAGS_RELEASE "-O2")
42
43 SET(LOCAL_PUBLIC_HEADER_DIR ${CMAKE_CURRENT_SOURCE_DIR}/public_api)
44 SET(IMAGE_DIR "${TZ_SYS_SHARE}/${PROJECT_NAME}/images")
45
46 ADD_DEFINITIONS("-DPKGNAME=\"${PROJECT_NAME}\"")
47
48 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})
49
50 ADD_LIBRARY(${PROJECT_NAME} SHARED ${BUILD_SOURCE})
51 SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES SOVERSION ${VERSION_MAJOR})
52 SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES VERSION ${VERSION})
53
54 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${viewer_dali_LDFLAGS} "-lpthread")
55
56 CONFIGURE_FILE(${PROJECT_NAME}.pc.in ${PROJECT_NAME}.pc @ONLY)
57 SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${PROJECT_NAME}.pc")
58
59 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${LIB_INSTALL_DIR})
60 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
61 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/public_api/${PROJECT_NAME}.h DESTINATION include/${PROJECT_NAME})
62
63 FILE(GLOB LOCAL_WIDGE_VIEW_HEADER_LIST RELATIVE "${LOCAL_PUBLIC_HEADER_DIR}" "${LOCAL_PUBLIC_HEADER_DIR}/widget_view/*.h")
64 FOREACH(flag ${LOCAL_WIDGE_VIEW_HEADER_LIST})
65         INSTALL(FILES ${LOCAL_PUBLIC_HEADER_DIR}/${flag} DESTINATION include/${PROJECT_NAME}/public_api/widget_view)
66 ENDFOREACH(flag)
67
68 FILE(GLOB LOCAL_WIDGE_VIEW_MANAGER_HEADER_LIST RELATIVE "${LOCAL_PUBLIC_HEADER_DIR}" "${LOCAL_PUBLIC_HEADER_DIR}/widget_view_manager/*.h")
69 FOREACH(flag ${LOCAL_WIDGE_VIEW_MANAGER_HEADER_LIST})
70         INSTALL(FILES ${LOCAL_PUBLIC_HEADER_DIR}/${flag} DESTINATION include/${PROJECT_NAME}/public_api/widget_view_manager)
71 ENDFOREACH(flag)
72
73 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/LICENSE DESTINATION /usr/share/license RENAME "lib${PROJECT_NAME}")
74 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/images/unknown.png DESTINATION ${IMAGE_DIR})
75