1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(privacy-manager)
4 SET(CMAKE_INSTALL_PREFIX /usr)
5 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
6 SET(EXEC_PREFIX "\${prefix}")
7 SET(LIBDIR "\${prefix}/lib")
8 SET(INCLUDEDIR "\${prefix}/include")
12 SET(VERSION "${VERSION_MAJOR}.0.1")
14 INCLUDE(FindPkgConfig)
15 pkg_check_modules(pkgs REQUIRED dlog sqlite3 dbus-1 dbus-glib-1)
17 FOREACH(flag ${pkgs_CFLAGS})
18 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
21 SET(CMAKE_C_FLAGS_PROFILING " -g -pg")
22 SET(CMAKE_CXX_FLAGS_PROFILING " -std=c++0x -g -pg")
23 SET(CMAKE_C_FLAGS_DEBUG " -g")
24 SET(CMAKE_CXX_FLAGS_DEBUG " -std=c++0x -g")
25 SET(CMAKE_C_FLAGS_RELEASE " -g")
26 SET(CMAKE_CXX_FLAGS_RELEASE " -std=c++0x -g")
27 SET(CMAKE_C_FLAGS_CCOV " -g --coverage")
28 SET(CMAKE_CXX_FLAGS_CCOV " -std=c++0x -g --coverage")
30 SET(server_src_dir "${CMAKE_SOURCE_DIR}/server/src")
31 SET(server_include_dir "${CMAKE_SOURCE_DIR}/server/inc/")
32 SET(common_src_dir "${CMAKE_SOURCE_DIR}/common/src/")
33 SET(common_include_dir "${CMAKE_SOURCE_DIR}/common/inc/")
34 SET(dbus_include_dir "/usr/include/dbus-1.0")
37 ADD_DEFINITIONS("-fvisibility=hidden")
38 ADD_DEFINITIONS("-Wall -Werror")
39 ADD_DEFINITIONS("-DDLOG_ERROR_ENABLED")
41 ###################################################################################################
42 ## for privacy-manager-server (executable)
50 SET(PRIVACY_MANAGER_SERVER_SOURCES
51 ${common_src_dir}/SocketConnection.cpp
52 ${common_src_dir}/SocketStream.cpp
53 ${server_src_dir}/main.cpp
54 ${server_src_dir}/SocketService.cpp
55 ${server_src_dir}/PrivacyManagerDaemon.cpp
56 ${server_src_dir}/service/PrivacyInfoService.cpp
57 ${server_src_dir}/PrivacyManagerServer.cpp
58 ${server_src_dir}/NotificationServer.cpp
61 SET(PRIVACY_MANAGER_SERVER_HEADERS
62 # ${server_include_dir}/SocketService.h
63 # ${server_include_dir}/PrivacyManagerDaemon.h
64 # ${common_include_dir}/SocketConnection.h
65 # ${common_include_dir}/SocketConnection.h
67 SET(PRIVACY_MANAGER_SERVER_LDFLAGS " -module -avoid-version ")
68 SET(PRIVACY_MANAGER_SERVER_CFLAGS " ${CFLAGS} -fPIC ")
69 #SET(PRIVACY_MANAGER_SERVER_LIBADD " ")
71 ADD_DEFINITIONS("-DLOG_TAG=\"PRIVACY-MANAGER-SERVER\"")
72 ADD_EXECUTABLE(privacy-manager-server ${PRIVACY_MANAGER_SERVER_SOURCES})
73 TARGET_LINK_LIBRARIES(privacy-manager-server ${pkgs_LDFLAGS} ${pkgs_LIBRARIES})
74 SET_TARGET_PROPERTIES(privacy-manager-server PROPERTIES COMPILE_FLAGS "${PRIVACY_MANAGER_SERVER_CFLAGS}")
75 #SET_TARGET_PROPERTIES(privacy-manager-server PROPERTIES SOVERSION ${VERSION_MAJOR})
76 #SET_TARGET_PROPERTIES(privacy-manager-server PROPERTIES VERSION ${VERSION})
77 ###################################################################################################
79 CONFIGURE_FILE(../privacy-manager-server.pc.in privacy-manager-server.pc @ONLY)
81 INSTALL(TARGETS privacy-manager-server DESTINATION ../bin COMPONENT RuntimeLibraries)
82 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/privacy-manager-server.pc DESTINATION ../lib/pkgconfig)
83 INSTALL(FILES ${PRIVACY_MANAGER_SERVER_HEADERS} DESTINATION ../include/privacy_manager/server)