Add Privacy-Guard
[platform/core/security/privacy-guard.git] / server / src / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 #PROJECT(privacy-guard-server)
3
4 SET(CMAKE_INSTALL_PREFIX /usr)
5 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
6 SET(EXEC_PREFIX "\${prefix}")
7 SET(LIBDIR ${LIB_INSTALL_DIR})
8 SET(INCLUDEDIR ${INCLUDE_INSTALL_DIR})
9 SET(VERSION 0.0)
10
11 SET(VERSION_MAJOR 0)
12 SET(VERSION "${VERSION_MAJOR}.0.1")
13
14 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
15
16 INCLUDE(FindPkgConfig)
17 #pkg_check_modules(pkgs REQUIRED dlog pkgmgr-info cynara-monitor)
18 pkg_check_modules(pkgs REQUIRED dlog pkgmgr-info)
19
20 FOREACH(flag ${pkgs_CFLAGS})
21         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
22 ENDFOREACH(flag)
23
24 SET(CMAKE_C_FLAGS_PROFILING    " -g -pg")
25 SET(CMAKE_CXX_FLAGS_PROFILING  " -std=c++0x -g -pg")
26 SET(CMAKE_C_FLAGS_DEBUG        " -g")
27 SET(CMAKE_CXX_FLAGS_DEBUG      " -std=c++0x -g")
28 SET(CMAKE_C_FLAGS_RELEASE      " -g")
29 SET(CMAKE_CXX_FLAGS_RELEASE    " -std=c++0x -g")
30 SET(CMAKE_C_FLAGS_CCOV         " -g --coverage")
31 SET(CMAKE_CXX_FLAGS_CCOV       " -std=c++0x -g --coverage")
32
33 SET(src_dir "./")
34 SET(include_dir "./../inc/")
35 SET(common_src_dir "./../../common/src/")
36 SET(common_include_dir "./../../common/inc/")
37
38 ## Additional flag
39 ADD_DEFINITIONS("-fvisibility=hidden")
40 ADD_DEFINITIONS("-Wall -Werror")
41 ADD_DEFINITIONS("-DDLOG_ERROR_ENABLED")
42
43 ###################################################################################################
44 ## for libprivacy-guard-server.so (library)
45 INCLUDE_DIRECTORIES(${pkgs_INCLUDE_DIRS})
46 SET(PRIVACY_GUARD_SERVER_SOURCES 
47         ${src_dir}/main.cpp
48         ${src_dir}/SocketService.cpp
49 #       ${src_dir}/CynaraService.cpp
50         ${src_dir}/PrivacyGuardDaemon.cpp
51         ${common_src_dir}/SocketConnection.cpp
52         ${common_src_dir}/SocketStream.cpp
53         )
54 SET(PRIVACY_GUARD_SERVER_HEADERS
55         ${include_dir}/SocketService.h
56 #       ${include_dir}/CynaraService.h  
57         ${include_dir}/PrivacyGuardDaemon.h
58         ${common_include_dir}/SocketConnection.h
59 )
60 SET(PRIVACY_GUARD_SERVER_LDFLAGS " -module -avoid-version ")
61 SET(PRIVACY_GUARD_SERVER_CFLAGS  " ${CFLAGS} -fPIC -I${include_dir}" -I${common_include_dir})
62 #SET(PRIVACY_GUARD_SERVER_LIBADD " ")
63
64 ADD_EXECUTABLE(privacy-guard-server ${PRIVACY_GUARD_SERVER_SOURCES})
65 TARGET_LINK_LIBRARIES(privacy-guard-server ${pkgs_LDFLAGS} ${pkgs_LIBRARIES})
66 SET_TARGET_PROPERTIES(privacy-guard-server PROPERTIES COMPILE_FLAGS "${PRIVACY_GUARD_SERVER_CFLAGS}")
67 SET_TARGET_PROPERTIES(privacy-guard-server PROPERTIES SOVERSION ${VERSION_MAJOR})
68 SET_TARGET_PROPERTIES(privacy-guard-server PROPERTIES VERSION ${VERSION})
69 ###################################################################################################
70
71 CONFIGURE_FILE(../../privacy-guard-server.pc.in privacy-guard-server.pc @ONLY)
72
73 INSTALL(TARGETS privacy-guard-server DESTINATION ${LIB_INSTALL_DIR} COMPONENT RuntimeLibraries)
74 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/privacy-guard-server.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
75 INSTALL(FILES ${PRIVACY_GUARD_SERVER_HEADERS} DESTINATION ${INCLUDE_INSTALL_DIR})