1 # Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
7 # http://www.apache.org/licenses/LICENSE-2.0
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
16 # @file CMakeLists.txt
17 # @author Bartlomiej Grzelewski (b.grzelewski@samsung.com)
31 LIST(APPEND DAEMON_BASIC_DEP libprivilege-control)
34 PKG_CHECK_MODULES(DAEMON_DEP
38 SET(DAEMON_SOURCES_PATH ${PROJECT_SOURCE_DIR}/src)
42 ${PROJECT_SOURCE_DIR}/socket_connection/connection/SocketConnection.cpp
43 ${PROJECT_SOURCE_DIR}/socket_connection/connection/SocketStream.cpp
45 ${DAEMON_SOURCES_PATH}/services/caller/security_caller.cpp
47 ${DAEMON_SOURCES_PATH}/daemon/dbus/security_dbus_service.cpp
48 ${DAEMON_SOURCES_PATH}/daemon/sockets/security_socket_service.cpp
49 ${DAEMON_SOURCES_PATH}/daemon/security_daemon.cpp
50 ${DAEMON_SOURCES_PATH}/main.cpp
52 ${DAEMON_SOURCES_PATH}/services/ocsp/dbus/ocsp_server_dbus_interface.cpp
53 ${DAEMON_SOURCES_PATH}/services/ocsp/socket/ocsp_service_callbacks.cpp
54 ${DAEMON_SOURCES_PATH}/services/ocsp/ocsp_service.cpp
56 ${DAEMON_SOURCES_PATH}/services/ace/dbus/ace_server_dbus_interface.cpp
57 ${DAEMON_SOURCES_PATH}/services/ace/socket/ace_service_callbacks.cpp
58 ${DAEMON_SOURCES_PATH}/services/ace/ace_service.cpp
59 ${DAEMON_SOURCES_PATH}/services/ace/logic/security_controller.cpp
60 ${DAEMON_SOURCES_PATH}/services/ace/logic/attribute_facade.cpp
61 ${DAEMON_SOURCES_PATH}/services/ace/logic/security_logic.cpp
62 ${DAEMON_SOURCES_PATH}/services/ace/logic/simple_roaming_agent.cpp
64 ${DAEMON_SOURCES_PATH}/services/popup/dbus/popup_response_dbus_interface.cpp
65 ${DAEMON_SOURCES_PATH}/services/popup/socket/popup_service_callbacks.cpp
68 SET_SOURCE_FILES_PROPERTIES(${DAEMON_SOURCES} PROPERTIES COMPILE_FLAGS "-std=c++0x")
70 SET(LEGACY_DAEMON_SOURCES
72 ${DAEMON_SOURCES_PATH}/security-srv/communication/security-server-comm.c
73 ${DAEMON_SOURCES_PATH}/security-srv/server/security-server-cookie.c
74 ${DAEMON_SOURCES_PATH}/security-srv/server/security-server-main.c
75 ${DAEMON_SOURCES_PATH}/security-srv/server/security-server-password.c
76 ${DAEMON_SOURCES_PATH}/security-srv/util/security-server-util-common.c)
78 SET_SOURCE_FILES_PROPERTIES(${LEGACY_DAEMON_SOURCES}
79 PROPERTIES COMPILE_FLAGS "-DSECURITY_SERVER_DEBUG_DLOG")
84 ${LEGACY_DAEMON_SOURCES})
86 SET_SOURCE_FILES_PROPERTIES(
87 ${DAEMON_SOURCES_PATH}/security-srv/communication/security-server-comm.c
88 PROPERTIES COMPILE_FLAGS "-D_GNU_SOURCE")
91 ############################# Lets start compilation process ##################
93 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/ace/include)
94 #socket connection library
95 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/socket_connection/connection)
97 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src)
98 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/daemon)
99 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/daemon/dbus)
100 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/daemon/sockets/api)
101 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/daemon/sockets)
103 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/services/caller)
105 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/services/ace)
106 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/services/ace/dbus)
107 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/services/ace/socket)
108 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/services/ace/socket/api)
109 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/services/ace/logic)
111 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/services/ocsp)
112 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/services/ocsp/dbus)
113 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/services/ocsp/socket)
114 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/services/ocsp/socket/api)
115 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/services/ocsp/logic)
117 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/services/popup)
118 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/services/popup/dbus)
119 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/services/popup/socket)
120 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/services/popup/socket/api)
121 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/services/popup/logic)
122 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/ace/include)
123 INCLUDE_DIRECTORIES(${DAEMON_DEP_INCLUDE_DIRS})
125 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/security-srv/include)
129 ADD_EXECUTABLE(${TARGET_DAEMON}
132 TARGET_LINK_LIBRARIES(${TARGET_DAEMON}
133 ${DAEMON_DEP_LIBRARIES}
135 ${TARGET_ACE_DAO_RW_LIB})
139 ###################################################################################################
140 ## for libsecurity-server-client.so (library)
141 pkg_check_modules(pkgs REQUIRED dlog openssl libsmack)
144 SET(VERSION ${VERSION_MAJOR}.0.1)
146 SET(libsecurity-server-client_SOURCES
147 ${DAEMON_SOURCES_PATH}/security-srv/client/security-server-client.c
148 ${DAEMON_SOURCES_PATH}/security-srv/communication/security-server-comm.c)
149 SET(libsecurity-server-client_LDFLAGS " -module -avoid-version")
150 SET(libsecurity-server-client_CFLAGS " ${CFLAGS} -fPIC -I${sec_svr_include_dir} ${debug_type} -D_GNU_SOURCE ")
151 #SET(libsecurity-server-client_LIBADD "")
153 ADD_LIBRARY(security-server-client SHARED ${libsecurity-server-client_SOURCES})
154 TARGET_LINK_LIBRARIES(security-server-client ${pkgs_LDFLAGS})
155 SET_TARGET_PROPERTIES(security-server-client PROPERTIES SOVERSION ${VERSION_MAJOR})
156 SET_TARGET_PROPERTIES(security-server-client PROPERTIES VERSION ${VERSION})
157 SET_TARGET_PROPERTIES(security-server-client PROPERTIES COMPILE_FLAGS "${libsecurity-server-client_CFLAGS}")
158 ###################################################################################################
160 INSTALL(TARGETS ${TARGET_DAEMON}
164 ${PROJECT_SOURCE_DIR}/src/daemon/dbus/org.tizen.SecurityDaemon.service
165 DESTINATION /usr/share/dbus-1/services
169 ${PROJECT_SOURCE_DIR}/src/services/ace/ace_server_api.h
170 ${PROJECT_SOURCE_DIR}/src/services/ocsp/ocsp_server_api.h
171 ${PROJECT_SOURCE_DIR}/src/services/popup/popup_response_server_api.h
172 ${PROJECT_SOURCE_DIR}/src/services/popup/popup_ace_data_types.h
173 ${PROJECT_SOURCE_DIR}/src/daemon/dbus/security_daemon_dbus_config.h
174 DESTINATION /usr/include/wrt-security
178 ${PROJECT_SOURCE_DIR}/src/security-srv/include/security-server.h
179 DESTINATION /usr/include/security-server
183 ${PROJECT_SOURCE_DIR}/src/security-srv/mw-list
184 DESTINATION /usr/share/security-server/)
187 ${PROJECT_SOURCE_DIR}/src/security-srv/security-serverd
188 DESTINATION /etc/rc.d/init.d)
190 INSTALL(TARGETS security-server-client DESTINATION lib)