Change pidfile path from /tmp to /run
[platform/core/multimedia/mmsvc-core.git] / CMakeLists.txt
index 3936d87..5880713 100644 (file)
@@ -1,36 +1,24 @@
 
 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
-SET(fw_name "mused")
-
-PROJECT(${fw_name})
-
-SET(SRCS
-       src/muse_core.c
-       src/muse_core_config.c
-       src/muse_core_ipc.c
-       src/muse_core_log.c
-       src/muse_core_module.c
-       src/muse_core_msg_json.c
-       src/muse_core_security.c
-       src/muse_core_signal.c
-       src/muse_core_system.c
-       src/muse_core_tool.c
-       src/muse_core_watchdog.c
-       src/muse_core_workqueue.c
-       )
-SET(SRC-SERVER
-       src/muse_core_server.c
-       )
+SET(MUSE_CORE "muse-core")
+
+PROJECT(${MUSE_CORE})
 
 SET(CMAKE_INSTALL_PREFIX /usr)
 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
 
 SET(BINDIR "${PREFIX}/bin")
-SET(INC_DIR include)
+SET(INC_DIR core/include)
 INCLUDE_DIRECTORIES(${INC_DIR})
 
-SET(dependents "dlog mm-common json-c glib-2.0 gio-2.0 capi-base-common gmodule-2.0 iniparser gstreamer-1.0")
-SET(dependents ${dependents} " libtbm cynara-client cynara-creds-socket cynara-session storage capi-system-info capi-system-runtime-info")
+SET(dependents
+    dlog
+    glib-2.0
+    json-c
+    mm-common)
+
+SET(pc_dependents
+    mm-common)
 
 IF(${MUSE_REGISTER_VIP})
 SET(dependents ${dependents} " libresourced")
@@ -44,11 +32,9 @@ IF(${MUSE_TTRACE_LOG})
 SET(dependents ${dependents} " ttrace")
 ENDIF(${MUSE_TTRACE_LOG})
 
-SET(pc_dependents "dlog gio-2.0 mm-common capi-base-common libtbm")
-
 INCLUDE(FindPkgConfig)
-pkg_check_modules(${fw_name} REQUIRED ${dependents})
-FOREACH(flag ${${fw_name}_CFLAGS})
+pkg_check_modules(${MUSE_CORE} REQUIRED ${dependents})
+FOREACH(flag ${${MUSE_CORE}_CFLAGS})
     SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
 ENDFOREACH(flag)
 
@@ -56,6 +42,11 @@ SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -Wall -fPIE -fno-strict-alia
 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-array-bounds -Wno-empty-body -Wno-ignored-qualifiers")
 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-unused-parameter -Wshadow -Wwrite-strings -Wswitch-default")
 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-unused-but-set-parameter -Wno-unused-but-set-variable -Wno-unused-result")
+
+IF(MUSE_GTESTS_BUILD)
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fprofile-arcs -ftest-coverage")
+ENDIF(MUSE_GTESTS_BUILD)
+
 SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
 
 IF("${ARCH}" STREQUAL "arm")
@@ -66,43 +57,43 @@ ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
 ADD_DEFINITIONS("-DTIZEN_DEBUG")
 ADD_DEFINITIONS(-DTZ_SYS_DATA_PATH="${TZ_SYS_DATA}")
 
-SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -pie")
-
-aux_source_directory(src SOURCES)
-ADD_LIBRARY(${fw_name} SHARED ${SRCS})
+aux_source_directory(core/src SOURCES)
+ADD_LIBRARY(${MUSE_CORE} SHARED ${SOURCES})
 
-TARGET_LINK_LIBRARIES(${fw_name} ${${fw_name}_LDFLAGS})
+TARGET_LINK_LIBRARIES(${MUSE_CORE} ${${MUSE_CORE}_LDFLAGS})
 
-SET_TARGET_PROPERTIES(${fw_name}
+SET_TARGET_PROPERTIES(${MUSE_CORE}
      PROPERTIES
      VERSION ${FULLVER}
      SOVERSION ${MAJORVER}
      CLEAN_DIRECT_OUTPUT 1
 )
 
-ADD_EXECUTABLE(muse-server ${SRC-SERVER})
-TARGET_LINK_LIBRARIES(muse-server ${pkgs_LDFLAGS} ${fw_name} ${CMAKE_DL_LIBS})
-INSTALL(TARGETS muse-server DESTINATION ${BINDIR})
-
-INSTALL(TARGETS ${fw_name} DESTINATION ${LIBDIR})
+INSTALL(TARGETS ${MUSE_CORE} DESTINATION ${LIBDIR})
 INSTALL(
         DIRECTORY ${INC_DIR}/ DESTINATION include/media
         FILES_MATCHING
         PATTERN "*_private.h" EXCLUDE
-        PATTERN "${INC_DIR}/*.h"
+        PATTERN "${INC_DIR}/muse_core.h"
         )
 
-SET(PC_NAME ${fw_name})
+SET(PC_NAME ${MUSE_CORE})
 SET(PC_REQUIRED ${pc_dependents})
-SET(PC_LDFLAGS -l${fw_name})
+SET(PC_LDFLAGS -l${MUSE_CORE})
 SET(PC_CFLAGS -I\${includedir}/media)
 
 CONFIGURE_FILE(
-    ${fw_name}.pc.in
-    ${CMAKE_CURRENT_SOURCE_DIR}/${fw_name}.pc
+    ${MUSE_CORE}.pc.in
+    ${CMAKE_CURRENT_SOURCE_DIR}/${MUSE_CORE}.pc
     @ONLY
 )
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${fw_name}.pc DESTINATION ${LIBDIR}/pkgconfig)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${MUSE_CORE}.pc DESTINATION ${LIBDIR}/pkgconfig)
+
+ADD_SUBDIRECTORY(server)
+ADD_SUBDIRECTORY(client)
+IF(MUSE_GTESTS_BUILD)
+ADD_SUBDIRECTORY(unittest)
+ENDIF(MUSE_GTESTS_BUILD)
 
 IF(UNIX)