Replace fff with gmock
[platform/core/appfw/tizen-theme-manager.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.8.12)
2
3 PROJECT(tizen-theme-manager)
4
5 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
6 SET(BINDIR "${CMAKE_INSTALL_PREFIX}/bin")
7 SET(LIBDIR ${LIB_INSTALL_DIR})
8 SET(INCLUDEDIR "\${prefix}/include")
9
10 ## Compiler flags
11 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14 -Wall -Werror -ffunction-sections -fdata-sections -fmerge-all-constants -fPIE")
12
13 ## Linker flags
14 SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed,--gc-sections -pie")
15
16 SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules/")
17
18 ## Targets
19 SET(TARGET_TIZEN_THEME_PROVIDER "tizen-theme-provider")
20 SET(TARGET_TIZEN_THEME "tizen-theme")
21 SET(TARGET_TIZEN_THEME_PLUGIN "tizen-theme-plugin")
22 SET(TARGET_THEME_PROVIDER "theme-provider")
23
24 ENABLE_TESTING()
25 SET(TARGET_TIZEN_THEME_UNIT_TEST "tizen-theme-unit-test")
26
27 INCLUDE(FindPkgConfig)
28 INCLUDE(ApplyPkgConfig)
29
30 ADD_DEFINITIONS("-DPROJECT_TAG=\"TIZEN_THEME_MANAGER\"")
31
32 ## Find all needed packages once
33 PKG_CHECK_MODULES(BUNDLE_DEPS REQUIRED bundle)
34 PKG_CHECK_MODULES(DLOG_DEPS REQUIRED dlog)
35 PKG_CHECK_MODULES(GLIB_DEPS REQUIRED glib-2.0)
36 PKG_CHECK_MODULES(GMOCK_DEPS REQUIRED gmock)
37 PKG_CHECK_MODULES(JSONCPP_DEPS REQUIRED jsoncpp)
38 PKG_CHECK_MODULES(PKGMGR_PARSER_DEPS REQUIRED pkgmgr-parser)
39 PKG_CHECK_MODULES(PKGMGR_INFO_DEPS REQUIRED pkgmgr-info)
40 PKG_CHECK_MODULES(SQLITE_DEPS REQUIRED sqlite3)
41 PKG_CHECK_MODULES(GOBJECT_DEPS REQUIRED gobject-2.0)
42
43 ADD_SUBDIRECTORY(src)
44 ADD_SUBDIRECTORY(test)
45
46 CONFIGURE_FILE(theme-manager.service.in theme-manager.service @ONLY)
47
48 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/theme-manager.service DESTINATION ${UNITDIR})
49 INSTALL(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/ DESTINATION ${SYSCONF_INSTALL_DIR}/dbus-1/system.d
50         FILES_MATCHING
51         PATTERN "*.conf")