# Copyright (c) 2014-2020 Samsung Electronics Co., Ltd All Rights Reserved # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # # @file CMakeLists.txt # @author Marcin Niesluchowski (m.niesluchow@samsung.com) # @brief # IF(NOT DEFINED SM_TEST_DIR) SET(SM_TEST_DIR "${SHARE_INSTALL_PREFIX}/security-manager-test") ENDIF(NOT DEFINED SM_TEST_DIR) ADD_DEFINITIONS("-DSM_TEST_DIR=\"${SM_TEST_DIR}\"") INCLUDE(FindPkgConfig) # Dependencies PKG_CHECK_MODULES(SEC_MGR_TESTS_DEP REQUIRED libsmack cynara-client cynara-admin security-manager security-privilege-manager libtzplatform-config sqlite3 libcap dbus-1 libgum boost) SET(TARGET_SEC_MGR_TESTS "security-manager-tests") SET(SEC_MGR_SOURCES ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/cynara_test_cynara_mask.cpp ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/cynara_test_commons.cpp ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/cynara_test_file_operations.cpp ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases.cpp ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_app_defined_privilege.cpp ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_app_policy.cpp ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_credentials.cpp ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_dyntransition.cpp ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_nss.cpp ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_paths.cpp ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_privacy_manager.cpp ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_private_sharing.cpp ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_public_sharing.cpp ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_register_paths.cpp ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_shm.cpp ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_smack_privileges.cpp ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_trusted_sharing.cpp ${PROJECT_SOURCE_DIR}/src/security-manager-tests/test_cases_prepare_app.cpp ${PROJECT_SOURCE_DIR}/src/security-manager-tests/security_manager_tests.cpp ${PROJECT_SOURCE_DIR}/src/security-manager-tests/common/policy_configuration.cpp ${PROJECT_SOURCE_DIR}/src/security-manager-tests/common/sm_commons.cpp ${PROJECT_SOURCE_DIR}/src/security-manager-tests/common/template_parser.cpp ${PROJECT_SOURCE_DIR}/src/security-manager-tests/common/scoped_app_launcher.cpp ${PROJECT_SOURCE_DIR}/src/security-manager-tests/common/app_install_helper_ext.cpp ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/cynara_test_client.cpp ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/cynara_test_admin.cpp ${PROJECT_SOURCE_DIR}/src/cynara-tests/plugins/plugins.cpp ) INCLUDE_DIRECTORIES(SYSTEM ${SEC_MGR_TESTS_DEP_INCLUDE_DIRS} ) INCLUDE_DIRECTORIES(SYSTEM ${CYNARA_TARGET_DEP_INCLUDE_DIRS} ) INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/src/common/ ${PROJECT_SOURCE_DIR}/src/security-manager-tests/common/ ${PROJECT_SOURCE_DIR}/src/cynara-tests/common/ ${PROJECT_SOURCE_DIR}/src/cynara-tests/plugins/ ) FIND_PACKAGE(Threads) ADD_EXECUTABLE(${TARGET_SEC_MGR_TESTS} ${SEC_MGR_SOURCES}) TARGET_LINK_LIBRARIES(${TARGET_SEC_MGR_TESTS} ${SEC_MGR_TESTS_DEP_LIBRARIES} dpl-test-framework tests-common rt ${CMAKE_THREAD_LIBS_INIT} ) INSTALL(TARGETS ${TARGET_SEC_MGR_TESTS} DESTINATION /usr/bin) INSTALL(DIRECTORY ${PROJECT_SOURCE_DIR}/src/security-manager-tests/app_files/ DESTINATION ${GLOBAL_APP_DIR} ) INSTALL(DIRECTORY ${PROJECT_SOURCE_DIR}/src/security-manager-tests/app_files/ DESTINATION ${LOCAL_APP_DIR} ) INSTALL(DIRECTORY ${PROJECT_SOURCE_DIR}/src/security-manager-tests/smack-privileges DESTINATION ${SM_TEST_DIR} )