# SPDX-License-Identifier: Apache-2.0 cmake_minimum_required(VERSION 3.20.0) find_package(Zephyr REQUIRED HINTS $ENV{ZEPHYR_BASE}) project(bsim_test_mesh) target_sources(app PRIVATE src/main.c src/mesh_test.c src/friendship_common.c ) if(CONFIG_BT_MESH_V1d1) target_sources(app PRIVATE src/dfu_blob_common.c ) endif() if(CONFIG_SETTINGS) target_sources(app PRIVATE src/test_persistence.c src/test_replay_cache.c src/test_provision.c ) if(CONFIG_BT_MESH_V1d1) target_sources(app PRIVATE src/test_dfu.c src/test_blob.c src/test_sar.c src/test_lcd.c ) endif() if(CONFIG_BT_MESH_USES_MBEDTLS_PSA) target_sources(app PRIVATE src/distribute_keyid.c src/psa_its_emul.c ) endif() elseif(CONFIG_BT_MESH_GATT_PROXY) target_sources(app PRIVATE src/test_advertiser.c ) if(CONFIG_BT_MESH_V1d1) target_sources(app PRIVATE src/test_beacon.c ) endif() elseif(CONFIG_BT_CTLR_LOW_LAT) target_sources(app PRIVATE src/test_friendship.c src/test_transport.c ) else() target_sources(app PRIVATE src/test_transport.c src/test_friendship.c src/test_provision.c src/test_beacon.c src/test_scanner.c src/test_heartbeat.c src/test_access.c src/test_iv_index.c src/test_advertiser.c ) if(CONFIG_BT_MESH_V1d1) target_sources(app PRIVATE src/test_blob.c src/test_op_agg.c src/test_sar.c src/test_cdp1.c ) endif() endif() zephyr_include_directories( ${BSIM_COMPONENTS_PATH}/libUtilv1/src/ ${BSIM_COMPONENTS_PATH}/libPhyComv1/src/ ) # The mbedTLS PSA ITS is not thread safe. # The issue: https://github.com/zephyrproject-rtos/zephyr/issues/59362 # Also, it isn't possible to use "native" ITS implementation since # mbedTLS includes headers that do not exist. # This linker option allows linking custom ITS implementation instead of # precompiled objects from the mbedTLS library to run it in parallel. if(CONFIG_BT_MESH_USES_MBEDTLS_PSA) zephyr_ld_options( ${LINKERFLAGPREFIX},--allow-multiple-definition ) endif()