6a6f5c3b484e79a8cb741c742ce58aebc157461f
[platform/core/security/ode.git] / server / CMakeLists.txt
1 #
2 # Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved
3 #
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
7 #
8 #     http://www.apache.org/licenses/LICENSE-2.0
9 #
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
15 #
16 SET(SERVER_SRCS main.cpp
17                                 server.cpp
18                                 secure-erase.cpp
19                                 internal-encryption.cpp
20                                 external-encryption.cpp
21                                 engine/ext4-engine.cpp
22                                 engine/dmcrypt-engine.cpp
23                                 engine/ecryptfs-engine.cpp
24                                 key-manager/key-store.cpp
25                                 key-manager/key-manager.cpp
26                                 key-manager/key-generator.cpp
27 )
28
29 SET(DEPENDENCY  klay
30                                 glib-2.0
31                                 gio-2.0
32                                 libxml-2.0
33                                 libtzplatform-config
34                                 cynara-client
35                                 cynara-session
36 )
37
38 SET(SERVER_NAME ${PROJECT_NAME}d)
39
40 ADD_EXECUTABLE(${SERVER_NAME} ${SERVER_SRCS})
41
42 PKG_CHECK_MODULES(SERVER_DEPS REQUIRED ${DEPENDENCY})
43
44 INCLUDE_DIRECTORIES(SYSTEM ${SERVER_DEPS_INCLUDE_DIRS} ${ODE_SERVER} ${PROJECT_SOURCE_DIR})
45
46 TARGET_LINK_LIBRARIES(${SERVER_NAME} ${SERVER_DEPS_LIBRARIES} pthread)
47
48 SET_TARGET_PROPERTIES(${SERVER_NAME} PROPERTIES COMPILE_FLAGS "-fPIE")
49 SET_TARGET_PROPERTIES(${SERVER_NAME} PROPERTIES LINK_FLAGS "-pie")
50
51 TARGET_COMPILE_DEFINITIONS(${SERVER_NAME} PRIVATE
52         RUN_PATH="${RUN_DIR}"
53         ICON_PATH="${ICON_DIR}"
54 )
55
56 CONFIGURE_FILE(systemd/${PROJECT_NAME}.service.in systemd/${PROJECT_NAME}.service)
57
58 INSTALL(TARGETS ${SERVER_NAME} DESTINATION ${BIN_DIR})
59 INSTALL(FILES systemd/${PROJECT_NAME}.service DESTINATION ${SYSTEMD_UNIT_DIR})