Adapt ProtocolSerialization to Cynara
[platform/core/security/cynara.git] / src / common / CMakeLists.txt
1 # Copyright (c) 2014 Samsung Electronics Co., Ltd All Rights Reserved
2 #
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
6 #
7 #        http://www.apache.org/licenses/LICENSE-2.0
8 #
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.
14 #
15 # @file        CMakeLists.txt
16 # @author      Lukasz Wojciechowski <l.wojciechow@partner.samsung.com>
17 #
18
19 SET(CYNARA_COMMON_VERSION_MAJOR 0)
20 SET(CYNARA_COMMON_VERSION ${CYNARA_COMMON_VERSION_MAJOR}.0.1)
21
22 SET(COMMON_PATH ${CYNARA_PATH}/common)
23
24 SET(COMMON_SOURCES
25     ${COMMON_PATH}/containers/BinaryQueue.cpp
26     ${COMMON_PATH}/log/log.cpp
27     ${COMMON_PATH}/protocol/ProtocolSerialization.cpp
28     ${COMMON_PATH}/types/PolicyBucket.cpp
29     ${COMMON_PATH}/types/PolicyKey.cpp
30     )
31
32 IF (CMAKE_BUILD_TYPE MATCHES "DEBUG")
33 SET(COMMON_SOURCES ${COMMON_SOURCES}
34     ${COMMON_PATH}/log/Backtrace.cpp
35     )
36 ENDIF (CMAKE_BUILD_TYPE MATCHES "DEBUG")
37
38 ADD_LIBRARY(${TARGET_CYNARA_COMMON} SHARED ${COMMON_SOURCES})
39
40 SET_TARGET_PROPERTIES(
41     ${TARGET_CYNARA_COMMON}
42     PROPERTIES
43         COMPILE_FLAGS "-D_GNU_SOURCE -fPIC -fvisibility=default"
44         SOVERSION ${CYNARA_COMMON_VERSION_MAJOR}
45         VERSION ${CYNARA_COMMON_VERSION}
46     )
47
48 IF (CMAKE_BUILD_TYPE MATCHES "DEBUG")
49 SET(CYNARA_DBG_LIBRARIES
50     ${CYNARA_DEP_LIBRARIES}
51     -lbfd
52     -liberty
53     -ldl
54     )
55 ENDIF (CMAKE_BUILD_TYPE MATCHES "DEBUG")
56
57 TARGET_LINK_LIBRARIES(${TARGET_CYNARA_COMMON}
58     ${CYNARA_DEP_LIBRARIES}
59     ${CYNARA_DBG_LIBRARIES}
60     )
61
62 INSTALL(TARGETS ${TARGET_CYNARA_COMMON} DESTINATION ${LIB_INSTALL_DIR})