apply the CBaseApp
[profile/tv/apps/native/videoplayer.git] / CMakeLists.txt
1 # Copyright (c) 2013 Samsung Electronics Co., Ltd All Rights Reserved
2 #
3 #    Licensed under the Apache License, Version 2.0 (the "License");
4 #    you may not use this file except in compliance with the License.
5 #    You may obtain a copy of the License at
6 #
7 #        http://www.apache.org/licenses/LICENSE-2.0
8 #
9 #    Unless required by applicable law or agreed to in writing, software
10 #    distributed under the License is distributed on an "AS IS" BASIS,
11 #    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 #    See the License for the specific language governing permissions and
13 #    limitations under the License.
14 #
15
16 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
17 PROJECT("video-player-tv-ref" CXX C)
18
19 INCLUDE(FindPkgConfig)
20 pkg_check_modules(PKGS REQUIRED
21                 elementary
22                 capi-appfw-application
23                 dlog
24                 ecore-x
25                 efl-extension
26                 edje
27                 evas
28                 utilX
29                 x11
30                 vconf
31                 application-common
32                 mm-player
33                 capi-media-player
34                 capi-media-sound-manager
35                 capi-content-media-content)
36
37 IF(NOT DEFINED PACKAGE_NAME)
38         SET(PACKAGE_NAME "org.tizen.video-player-tv-ref")
39 ENDIF(NOT DEFINED PACKAGE_NAME)
40
41 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
42 IF(NOT DEFINED BINDIR)
43         SET(BINDIR "${PREFIX}/bin")
44 ENDIF(NOT DEFINED BINDIR)
45 IF(NOT DEFINED RESDIR)
46   SET(RESDIR "${PREFIX}/res")
47 ENDIF(NOT DEFINED RESDIR)
48 IF(NOT DEFINED EDJEDIR)
49         SET(EDJEDIR "${PREFIX}/res/edje")
50 ENDIF(NOT DEFINED EDJEDIR)
51 IF(NOT DEFINED LOCALEDIR)
52         SET(LOCALEDIR "${PREFIX}/res/locale")
53 ENDIF(NOT DEFINED LOCALEDIR)
54 IF(NOT DEFINED IMAGEDIR)
55   SET(IMAGEDIR "${PREFIX}/res/images")
56 ENDIF(NOT DEFINED IMAGEDIR)
57 IF(NOT DEFINED MANIFESTDIR)
58         SET(MANIFESTDIR "/usr/share/packages")
59 ENDIF(NOT DEFINED MANIFESTDIR)
60 IF(NOT DEFINED DESKTOP_ICONDIR)
61         SET(DESKTOP_ICONDIR "/usr/share/icons/default/small")
62 ENDIF(NOT DEFINED DESKTOP_ICONDIR)
63 IF(NOT DEFINED DESKTOP_ICON)
64         SET(DESKTOP_ICON ${PACKAGE_NAME}.png)
65 ENDIF(NOT DEFINED DESKTOP_ICON)
66
67 SET(SRCS
68         src/main.cpp
69         src/view_player.cpp
70         src/playermgr.cpp
71         src/videodata.cpp
72         src/mediadata.cpp
73         src/timeout_handler.cpp
74         src/volume.cpp
75         src/slider.cpp
76         src/control.cpp
77 )
78
79 SET(TARGET_EDJ "${PROJECT_NAME}.edj")
80 SET(THEME_EDJ "${PROJECT_NAME}-theme.edj")
81
82 ADD_DEFINITIONS("-DEDJEDIR=\"${EDJEDIR}\"")
83 ADD_DEFINITIONS("-DEDJEFILE=\"${EDJEDIR}/${TARGET_EDJ}\"")
84 ADD_DEFINITIONS("-DTHEMEFILE=\"${EDJEDIR}/${THEME_EDJ}\"")
85 ADD_DEFINITIONS("-DPACKAGE=\"${PACKAGE_NAME}\"")
86 ADD_DEFINITIONS("-DLOCALEDIR=\"${LOCALEDIR}\"")
87 ADD_DEFINITIONS("-DDOMAIN_NAME=\"${PROJECT_NAME}\"")
88 ADD_DEFINITIONS("-DIMAGEDIR=\"${IMAGEDIR}\"")
89
90 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include)
91
92 ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
93
94 FOREACH(flag ${PKGS_CFLAGS})
95         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
96 ENDFOREACH(flag)
97
98 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
99 SET(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
100
101 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${PKGS_LDFLAGS})
102 CONFIGURE_FILE(${PACKAGE_NAME}.xml.in ${PACKAGE_NAME}.xml)
103
104 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${BINDIR})
105 INSTALL(FILES ${PACKAGE_NAME}.xml DESTINATION ${MANIFESTDIR})
106 INSTALL(FILES ${PACKAGE_NAME}.manifest DESTINATION ${MANIFESTDIR})
107 INSTALL(FILES ${CMAKE_SOURCE_DIR}/${DESKTOP_ICON} DESTINATION ${DESKTOP_ICONDIR})
108 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/res/images DESTINATION ${RESDIR})
109
110 ADD_SUBDIRECTORY(res/edc)