1 # Copyright (c) 2014-2020 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.
15 # @file CMakeLists.txt
16 # @author Marcin Niesluchowski (m.niesluchow@samsung.com)
20 IF(NOT DEFINED SM_TEST_DIR)
21 SET(SM_TEST_DIR "${SHARE_INSTALL_PREFIX}/security-manager-test")
22 ENDIF(NOT DEFINED SM_TEST_DIR)
23 ADD_DEFINITIONS("-DSM_TEST_DIR=\"${SM_TEST_DIR}\"")
25 INCLUDE(FindPkgConfig)
28 PKG_CHECK_MODULES(SEC_MGR_TESTS_DEP
34 security-privilege-manager
43 SET(TARGET_SEC_MGR_TESTS "security-manager-tests")
46 ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/cynara_test_cynara_mask.cpp
47 ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/cynara_test_commons.cpp
48 ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/cynara_test_file_operations.cpp
49 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases.cpp
50 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_app_defined_privilege.cpp
51 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_app_policy.cpp
52 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_credentials.cpp
53 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_dyntransition.cpp
54 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_nss.cpp
55 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_paths.cpp
56 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_privacy_manager.cpp
57 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_private_sharing.cpp
58 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_public_sharing.cpp
59 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_register_paths.cpp
60 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_shm.cpp
61 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_smack_privileges.cpp
62 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_trusted_sharing.cpp
63 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_prepare_app.cpp
64 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/security_manager_tests.cpp
65 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/common/policy_configuration.cpp
66 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/common/sm_commons.cpp
67 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/common/template_parser.cpp
68 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/common/scoped_app_launcher.cpp
69 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/common/app_install_helper_ext.cpp
70 ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/cynara_test_client.cpp
71 ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/cynara_test_admin.cpp
72 ${PROJECT_SOURCE_DIR}/src/cynara-tests/plugins/plugins.cpp
75 INCLUDE_DIRECTORIES(SYSTEM
76 ${SEC_MGR_TESTS_DEP_INCLUDE_DIRS}
79 INCLUDE_DIRECTORIES(SYSTEM
80 ${CYNARA_TARGET_DEP_INCLUDE_DIRS}
84 ${PROJECT_SOURCE_DIR}/src/common/
85 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/common/
86 ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/
87 ${PROJECT_SOURCE_DIR}/src/cynara-tests/plugins/
92 ADD_EXECUTABLE(${TARGET_SEC_MGR_TESTS} ${SEC_MGR_SOURCES})
94 TARGET_LINK_LIBRARIES(${TARGET_SEC_MGR_TESTS}
95 ${SEC_MGR_TESTS_DEP_LIBRARIES}
99 ${CMAKE_THREAD_LIBS_INIT}
102 INSTALL(TARGETS ${TARGET_SEC_MGR_TESTS} DESTINATION /usr/bin)
105 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/app_files/
106 DESTINATION ${GLOBAL_APP_DIR}
110 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/app_files/
111 DESTINATION ${LOCAL_APP_DIR}
115 ${PROJECT_SOURCE_DIR}/src/security-manager-tests/smack-privileges
116 DESTINATION ${SM_TEST_DIR}