1# 2# Copyright (c) 2020, The OpenThread Authors. 3# All rights reserved. 4# 5# Redistribution and use in source and binary forms, with or without 6# modification, are permitted provided that the following conditions are met: 7# 1. Redistributions of source code must retain the above copyright 8# notice, this list of conditions and the following disclaimer. 9# 2. Redistributions in binary form must reproduce the above copyright 10# notice, this list of conditions and the following disclaimer in the 11# documentation and/or other materials provided with the distribution. 12# 3. Neither the name of the copyright holder nor the 13# names of its contributors may be used to endorse or promote products 14# derived from this software without specific prior written permission. 15# 16# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 17# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 18# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 19# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE 20# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 21# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 22# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 23# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 24# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 25# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 26# POSSIBILITY OF SUCH DAMAGE. 27# 28 29add_library(openthread-radio) 30 31target_compile_definitions(openthread-radio PRIVATE 32 OPENTHREAD_RADIO=1 33) 34 35target_compile_options(openthread-radio PRIVATE 36 ${OT_CFLAGS} 37) 38 39target_include_directories(openthread-radio PUBLIC ${OT_PUBLIC_INCLUDES} PRIVATE ${COMMON_INCLUDES}) 40 41target_sources(openthread-radio PRIVATE 42 api/diags_api.cpp 43 api/error_api.cpp 44 api/instance_api.cpp 45 api/link_raw_api.cpp 46 api/logging_api.cpp 47 api/random_noncrypto_api.cpp 48 api/tasklet_api.cpp 49 common/error.cpp 50 common/instance.cpp 51 common/logging.cpp 52 common/random_manager.cpp 53 common/string.cpp 54 common/tasklet.cpp 55 common/timer.cpp 56 crypto/aes_ccm.cpp 57 crypto/aes_ecb.cpp 58 diags/factory_diags.cpp 59 mac/link_raw.cpp 60 mac/mac_frame.cpp 61 mac/mac_types.cpp 62 mac/sub_mac.cpp 63 mac/sub_mac_callbacks.cpp 64 radio/radio.cpp 65 radio/radio_callbacks.cpp 66 radio/radio_platform.cpp 67 thread/link_quality.cpp 68 utils/lookup_table.cpp 69 utils/parse_cmdline.cpp 70) 71 72if(OT_VENDOR_EXTENSION) 73 target_sources(openthread-radio PRIVATE ${OT_VENDOR_EXTENSION}) 74endif() 75 76target_link_libraries(openthread-radio 77 PRIVATE 78 ${OT_MBEDTLS} 79 ot-config 80) 81