Check VCONF value for Maintenance Mode
[platform/core/security/device-policy-client.git] / libs / 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 CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
17
18 SET(TARGET "dpm")
19 SET(LIB_VERSION "${VERSION}")
20 SET(LIB_SOVERSION "0")
21
22 SET(PC_FILE "${TARGET}.pc")
23
24 SET(POLICY              policy-client.cpp
25                                 client-handle.cpp
26                                 administration.cpp
27                                 application.cpp
28                                 bluetooth.cpp
29                                 restriction.cpp
30                                 security.cpp
31                                 wifi.cpp
32                                 password.cpp
33                                 zone.cpp
34 )
35
36 SET(CAPI                dpm/device-policy-manager.h
37                                 dpm/administration.h
38                                 dpm/application.h
39                                 dpm/bluetooth.h
40                                 dpm/restriction.h
41                                 dpm/security.h
42                                 dpm/wifi.h
43                                 dpm/password.h
44                                 dpm/password_internal.h
45                                 dpm/zone.h
46 )
47
48 SET (CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,-z,noexecstack")
49
50 ADD_LIBRARY(${TARGET} SHARED ${FOUNDATION} ${POLICY})
51
52 SET_TARGET_PROPERTIES(${TARGET} PROPERTIES COMPILE_FLAGS "-fvisibility=hidden")
53 SET_TARGET_PROPERTIES(${TARGET} PROPERTIES SOVERSION ${LIB_SOVERSION})
54 SET_TARGET_PROPERTIES(${TARGET} PROPERTIES VERSION   ${LIB_VERSION})
55
56 PKG_CHECK_MODULES(LIBS_DEPS     REQUIRED
57                                                         klay
58                                                         glib-2.0
59                                                         capi-base-common
60                                                         capi-system-info
61                                                         vconf
62 )
63
64 INCLUDE_DIRECTORIES(SYSTEM ${LIBS_DEPS_INCLUDE_DIRS} ${DPM_LIBS})
65 TARGET_LINK_LIBRARIES(${TARGET} ${LIBS_DEPS_LIBRARIES} pthread)
66
67 CONFIGURE_FILE(${PC_FILE}.in ${CMAKE_BINARY_DIR}/${PC_FILE} @ONLY)
68
69 INSTALL(FILES ${CMAKE_BINARY_DIR}/${PC_FILE} DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
70 INSTALL(TARGETS ${TARGET} DESTINATION ${LIB_INSTALL_DIR} COMPONENT RuntimeLibraries)
71 INSTALL(FILES ${CAPI} DESTINATION ${INCLUDE_INSTALL_DIR}/dpm)