Merge branch 'tizen' into cynara
[platform/core/test/security-tests.git] / src / ckm / CMakeLists.txt
1 # Copyright (c) 2013-2015 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      Bartlomiej Grzelewski (b.grzelewski@samsung.com)
17 # @brief
18 #
19
20 INCLUDE(FindPkgConfig)
21
22 # mdpp flag
23 IF (DEFINED SECURITY_MDFPP_STATE_ENABLED)
24     MESSAGE("SECURITY_MDFPP_STATE_ENABLE ENABLED !")
25     ADD_DEFINITIONS("-DSECURITY_MDFPP_STATE_ENABLE")
26 ELSE (DEFINED SECURITY_MDFPP_STATE_ENABLED)
27     MESSAGE("SECURITY_MDFPP_STATE_ENABLE DISABLED !")
28 ENDIF (DEFINED SECURITY_MDFPP_STATE_ENABLED)
29
30 ADD_DEFINITIONS("-DCKM_TEST_DIR=\"${CKM_TEST_DIR}\"")
31 ADD_DEFINITIONS("-DCKM_RW_DATA_DIR=\"${CKM_RW_DATA_DIR}\"")
32
33 # Dependencies
34 PKG_CHECK_MODULES(CKM_DEP
35     libsmack
36     key-manager
37     dbus-1
38     vconf
39     REQUIRED)
40
41 # Targets definition
42
43 SET(CKM_SOURCES
44     ${PROJECT_SOURCE_DIR}/src/ckm/access_provider2.cpp
45     ${PROJECT_SOURCE_DIR}/src/ckm/main.cpp
46     ${PROJECT_SOURCE_DIR}/src/ckm/capi-testcases.cpp
47     ${PROJECT_SOURCE_DIR}/src/ckm/capi-certificate-chains.cpp
48     ${PROJECT_SOURCE_DIR}/src/ckm/capi-access_control.cpp
49     ${PROJECT_SOURCE_DIR}/src/ckm/async-api.cpp
50     ${PROJECT_SOURCE_DIR}/src/ckm/ckm-common.cpp
51 #    ${PROJECT_SOURCE_DIR}/src/ckm/cc-mode.cpp
52 #    ${PROJECT_SOURCE_DIR}/src/ckm/password-integration.cpp
53     ${PROJECT_SOURCE_DIR}/src/ckm/system-db.cpp
54     ${PROJECT_SOURCE_DIR}/src/ckm/initial-values.cpp
55     ${PROJECT_SOURCE_DIR}/src/ckm/test-certs.cpp
56     ${PROJECT_SOURCE_DIR}/src/ckm/algo-params.cpp
57     ${PROJECT_SOURCE_DIR}/src/ckm/encryption-decryption-env.cpp
58     ${PROJECT_SOURCE_DIR}/src/ckm/encryption-decryption.cpp
59 )
60
61 INCLUDE_DIRECTORIES(SYSTEM ${CKM_DEP_INCLUDE_DIRS})
62 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/common/ )
63 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/ckm/ )
64
65 ADD_EXECUTABLE(${TARGET_CKM_TESTS} ${CKM_SOURCES})
66
67 TARGET_LINK_LIBRARIES(${TARGET_CKM_TESTS} ${CKM_DEP_LIBRARIES} ${COMMON_TARGET_TEST})
68
69 # Installation
70
71 INSTALL(TARGETS ${TARGET_CKM_TESTS} DESTINATION bin)
72 INSTALL(FILES
73     test1801.pkcs12
74     pkcs.p12
75     capi-t3096.p12
76     XML_1_okay.xml
77     XML_2_okay.xml
78     XML_3_wrong.xml
79     device_key.xml
80     DESTINATION ${CKM_TEST_DIR}
81     )
82
83 # C compilation
84 SET(TARGET_C_COMPILATION_TEST "ckm-c-compilation-test")
85
86 SET(C_COMPILATION_SOURCES
87     ${PROJECT_SOURCE_DIR}/src/ckm/c-compilation.c
88 )
89
90 PKG_CHECK_MODULES(CKM_C_COMPILATION_DEP
91     key-manager
92     REQUIRED)
93
94 ADD_EXECUTABLE(${TARGET_C_COMPILATION_TEST} ${C_COMPILATION_SOURCES})
95
96 TARGET_LINK_LIBRARIES(${TARGET_C_COMPILATION_TEST} ${CKM_C_COMPILATION_DEP_LIBRARIES})