Release version 1.6.27
[platform/core/appfw/data-provider-master.git] / CMakeLists.txt
old mode 100755 (executable)
new mode 100644 (file)
index 34feb97..b54c738
 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
-PROJECT(data-provider-master C)
+PROJECT(data-provider-master C CXX)
+
+SET(PREFIX "${CMAKE_INSTALL_PREFIX}")
+SET(EXEC_PREFIX "\${prefix}")
+SET(PROJECT_NAME "${PROJECT_NAME}")
+SET(LIBDIR ${LIB_INSTALL_DIR})
+SET(INCLUDEDIR "\${prefix}/include/${PROJECT_NAME}")
+SET(VERSION_MAJOR 1)
+SET(VERSION "${VERSION_MAJOR}.0.0")
 
 INCLUDE(FindPkgConfig)
-pkg_check_modules(pkg REQUIRED
-       ail
+pkg_check_modules(pkgs REQUIRED
        dlog
        aul
        vconf
        sqlite3
-       db-util
        glib-2.0
        gio-2.0
+       gio-unix-2.0
        bundle
-       ecore-x
-       ecore
-       evas
-       ecore-evas
-       com-core
-       x11
-       libdri2
-       libdrm
-       libtbm
-       xfixes
-       dri2proto
-       xext
-       xdamage
        pkgmgr
-       livebox-service
        notification
-       notification-service
+       notification-ex
        badge
        libsmack
        shortcut
+       pkgmgr-info
+       libsystemd
+       capi-appfw-app-manager
+       alarm-service
+       libtzplatform-config
+       security-manager
 )
 
-SET(PACKAGE "${PROJECT_NAME}")
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Winline -Werror -fno-builtin-malloc -fno-omit-frame-pointer -g")
-
-INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include)
-
-#ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
-ADD_DEFINITIONS("-DPATH_MAX=256")
-ADD_DEFINITIONS("-DPACKAGE=\"${PACKAGE}\"")
-ADD_DEFINITIONS("-DLOCALEDIR=\"${LOCALEDIR}\"")
-
-ADD_DEFINITIONS("-DINFO_SOCKET=\"/opt/usr/share/live_magazine/.live.socket\"")
-ADD_DEFINITIONS("-DCLIENT_SOCKET=\"/opt/usr/share/live_magazine/.client.socket\"")
-ADD_DEFINITIONS("-DSLAVE_SOCKET=\"/opt/usr/share/live_magazine/.slave.socket\"")
-ADD_DEFINITIONS("-DSERVICE_SOCKET=\"/opt/usr/share/live_magazine/.service.socket\"")
-
-ADD_DEFINITIONS("-DCLIENT_PORT=\"8208\"")
+FOREACH(flag ${pkgs_CFLAGS})
+       SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
+ENDFOREACH(flag)
+SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -Wall -Werror -Winline")
 
-ADD_DEFINITIONS("-DBADGE_SOCKET=\"/tmp/.badge.service\"")
-ADD_DEFINITIONS("-DSHORTCUT_SOCKET=\"/tmp/.shortcut.service\"")
-ADD_DEFINITIONS("-DNOTIFICATION_SOCKET=\"/tmp/.notification.service\"")
-ADD_DEFINITIONS("-DUTILITY_SOCKET=\"/tmp/.utility.service\"")
+SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS} -std=c++11")
+SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g")
+SET(CMAKE_CXX_FLAGS_RELEASE "-O2")
 
-ADD_DEFINITIONS("-DUTILITY_SMACK_LABEL=\"data-provider-master::utility\"")
-ADD_DEFINITIONS("-DSHORTCUT_SMACK_LABEL=\"data-provider-master::shortcut\"")
-ADD_DEFINITIONS("-DNOTIFICATION_SMACK_LABEL=\"data-provider-master::notification\"")
-ADD_DEFINITIONS("-DBADGE_SMACK_LABEL=\"data-provider-master::badge\"")
-ADD_DEFINITIONS("-DDATA_SHARE_LABEL=\"data-provider-master::share\"")
-
-ADD_DEFINITIONS("-DDEFAULT_MASTER_CONF=\"/usr/share/data-provider-master/conf.ini\"")
-
-ADD_DEFINITIONS("-DNDEBUG")
-
-ADD_DEFINITIONS("-D_USE_ECORE_TIME_GET")
-#ADD_DEFINITIONS("-D_APPLY_SCRIPT_ASYNC_UPDATE")
-#ADD_DEFINITIONS("-DFLOG")
-ADD_DEFINITIONS(${pkg_CFLAGS})
-ADD_DEFINITIONS(${pkg_LDFLAGS})
-
-ADD_EXECUTABLE(${PROJECT_NAME}
-       src/main.c
-       src/util.c
-       src/fault_manager.c
-       src/parser.c
-       src/conf.c
-       src/dead_monitor.c
-       src/group.c
-       src/fb.c
-       src/script_handler.c
-       src/buffer_handler.c
-       src/io.c
-       src/xmonitor.c
-       src/slave_life.c
-       src/slave_rpc.c
-       src/client_life.c
-       src/client_rpc.c
-       src/setting.c
-       src/package.c
-       src/instance.c
-       src/server.c
-       src/abi.c
-       src/critical_log.c
-       src/liveinfo.c
-       src/pkgmgr.c
-       src/event.c
-       src/shortcut_service.c
-       src/badge_service.c
-       src/notification_service.c
-       src/utility_service.c
-       src/file_service.c
-       src/service_common.c
-)
+INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include)
 
-TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkg_LDFLAGS} "-ldl -lrt")
-INSTALL(FILES ${CMAKE_SOURCE_DIR}/data/abi.ini DESTINATION /usr/share/data-provider-master PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)
+AUX_SOURCE_DIRECTORY(src SOURCES)
+ADD_EXECUTABLE(${PROJECT_NAME} ${SOURCES})
 
-INSTALL(FILES ${CMAKE_SOURCE_DIR}/data/${PRODUCT}.conf.ini DESTINATION /usr/share/data-provider-master RENAME "conf.ini" PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)
+SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES COMPILE_FLAGS "${EXTRA_CFLAGS} -fPIE")
+SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES LINK_FLAGS "-pie")
+TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS})
 
-INSTALL(FILES ${CMAKE_SOURCE_DIR}/data/resolution.ini DESTINATION /usr/share/data-provider-master PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)
-INSTALL(FILES ${CMAKE_SOURCE_DIR}/LICENSE DESTINATION /usr/share/license RENAME "${PROJECT_NAME}")
 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION /usr/bin PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
 
-# INCLUDE FOR BUILD & INSTALL .PO FILES
-ADD_SUBDIRECTORY(res)
-ADD_SUBDIRECTORY(data)
-ADD_SUBDIRECTORY(pkgmgr_livebox)
+CONFIGURE_FILE(data-provider-master.conf.in data-provider-master.conf @ONLY)
+CONFIGURE_FILE(org.tizen.data-provider-master.service.in org.tizen.data_provider_service.service @ONLY)
 
-if ("${ENGINEER_BINARY}" STREQUAL "true")
-ADD_SUBDIRECTORY(util_liveinfo)
-endif ("${ENGINEER_BINARY}" STREQUAL "true")
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/org.tizen.data_provider_service.service DESTINATION ${SHARE_INSTALL_PREFIX}/dbus-1/system-services/)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}.conf DESTINATION ${SYSCONF_INSTALL_DIR}/dbus-1/system.d/)