cyclonedds/src/security/builtin_plugins/tests/CMakeLists.txt
2020-03-05 15:25:16 +01:00

101 lines
5.1 KiB
CMake

#
# Copyright(c) 2006 to 2019 ADLINK Technology Limited and others
#
# This program and the accompanying materials are made available under the
# terms of the Eclipse Public License v. 2.0 which is available at
# http://www.eclipse.org/legal/epl-2.0, or the Eclipse Distribution License
# v. 1.0 which is available at
# http://www.eclipse.org/org/documents/edl-v10.php.
#
# SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
#
include(CUnit)
set(security_auth_test_sources
"common/src/loader.c"
"common/src/handshake_helper.c"
"get_authenticated_peer_credential_token/src/get_authenticated_peer_credential_token_utests.c"
"process_handshake/src/process_handshake_utests.c"
"validate_begin_handshake_reply/src/validate_begin_handshake_reply_utests.c"
"validate_begin_handshake_request/src/validate_begin_handshake_request_utests.c"
"validate_local_identity/src/validate_local_identity_utests.c"
"validate_remote_identity/src/validate_remote_identity_utests.c"
"listeners_authentication/src/listeners_authentication_utests.c"
"listeners_access_control/src/listeners_access_control_utests.c"
)
set(security_ac_test_sources
"access_control_fnmatch/src/access_control_fnmatch_utests.c"
"get_permissions_credential_token/src/get_permissions_credential_token_utests.c"
"get_permissions_token/src/get_permissions_token_utests.c"
"get_xxx_sec_attributes/src/get_xxx_sec_attributes_utests.c"
# "listeners_access_control/src/listeners_access_control_utests.c"
"validate_local_permissions/src/validate_local_permissions_utests.c"
"validate_remote_permissions/src/validate_remote_permissions_utests.c"
)
set(security_crypto_test_sources
"common/src/crypto_helper.c"
"create_local_datareader_crypto_tokens/src/create_local_datareader_crypto_tokens_utests.c"
"create_local_datawriter_crypto_tokens/src/create_local_datawriter_crypto_tokens_utests.c"
"create_local_participant_crypto_tokens/src/create_local_participant_crypto_tokens_utests.c"
"decode_datareader_submessage/src/decode_datareader_submessage_utests.c"
"decode_datawriter_submessage/src/decode_datawriter_submessage_utests.c"
"decode_rtps_message/src/decode_rtps_message_utests.c"
"decode_serialized_payload/src/decode_serialized_payload_utests.c"
"encode_datareader_submessage/src/encode_datareader_submessage_utests.c"
"encode_datawriter_submessage/src/encode_datawriter_submessage_utests.c"
"encode_rtps_message/src/encode_rtps_message_utests.c"
"encode_serialized_payload/src/encode_serialized_payload_utests.c"
"preprocess_secure_submsg/src/preprocess_secure_submsg_utests.c"
"register_local_datareader/src/register_local_datareader_utests.c"
"register_local_datawriter/src/register_local_datawriter_utests.c"
"register_local_participant/src/register_local_participant_utests.c"
"register_matched_remote_datareader/src/register_matched_remote_datareader_utests.c"
"register_matched_remote_datawriter/src/register_matched_remote_datawriter_utests.c"
"register_matched_remote_participant/src/register_matched_remote_participant_utests.c"
"set_remote_datareader_crypto_tokens/src/set_remote_datareader_crypto_tokens_utests.c"
"set_remote_datawriter_crypto_tokens/src/set_remote_datawriter_crypto_tokens_utests.c"
"set_remote_participant_crypto_tokens/src/set_remote_participant_crypto_tokens_utests.c"
)
add_cunit_executable(cunit_security_plugins ${security_auth_test_sources} ${security_ac_test_sources} ${security_crypto_test_sources})
target_include_directories(
cunit_security_plugins PRIVATE
"$<BUILD_INTERFACE:${CMAKE_BINARY_DIR}/src/include/>"
"$<BUILD_INTERFACE:$<TARGET_PROPERTY:security_api,INTERFACE_INCLUDE_DIRECTORIES>>"
"$<BUILD_INTERFACE:$<TARGET_PROPERTY:security_core,INTERFACE_INCLUDE_DIRECTORIES>>"
"$<BUILD_INTERFACE:$<TARGET_PROPERTY:ddsrt,INTERFACE_INCLUDE_DIRECTORIES>>"
"$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}>"
"$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>"
)
target_link_libraries(cunit_security_plugins PRIVATE ddsc security_api)
if(OPENSSL_FOUND)
target_link_libraries(cunit_security_plugins PRIVATE ddsc dds_security_ac)
target_link_libraries(cunit_security_plugins PRIVATE ddsc dds_security_crypto)
target_link_libraries(cunit_security_plugins PRIVATE OpenSSL::SSL)
else()
message(FATAL_ERROR "To build with openssl support, set ENABLE_OPENSSL to ON")
endif()
target_include_directories(
cunit_security_plugins PRIVATE
"$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/../access_control/src/>"
"$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/../cryptographic/src/>"
"$<BUILD_INTERFACE:$<TARGET_PROPERTY:security_api,INTERFACE_INCLUDE_DIRECTORIES>>"
"$<BUILD_INTERFACE:$<TARGET_PROPERTY:security_core,INTERFACE_INCLUDE_DIRECTORIES>>"
"$<BUILD_INTERFACE:$<TARGET_PROPERTY:ddsrt,INTERFACE_INCLUDE_DIRECTORIES>>"
"$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}>"
"$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>"
)
set(CUnit_builtin_plugins_tests_dir "${CMAKE_CURRENT_LIST_DIR}")
set(CUnit_build_dir "${CMAKE_CURRENT_BINARY_DIR}")
configure_file("config_env.h.in" "config_env.h")