Fix for x86_64 build fail
[platform/upstream/connectedhomeip.git] / third_party / ot-br-posix / repo / third_party / openthread / CMakeLists.txt
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
29 set(OT_BORDER_AGENT ON CACHE BOOL "enable border agent" FORCE)
30 set(OT_BORDER_ROUTER ON CACHE BOOL "enable border router feature" FORCE)
31 set(OT_BUILD_EXECUTABLES OFF CACHE BOOL "disable building executables" FORCE)
32 set(OT_BUILTIN_MBEDTLS_MANAGEMENT OFF CACHE BOOL "diable mbedTLS management" FORCE)
33 set(OT_COMMISSIONER ON CACHE BOOL "enable commissioner" FORCE)
34 set(OT_DAEMON ON CACHE BOOL "enable daemon mode" FORCE)
35 set(OT_JOINER ON CACHE BOOL "enable joiner" FORCE)
36 set(OT_LEGACY ON CACHE STRING "enable legacy network support" FORCE)
37 set(OT_SLAAC ON CACHE BOOL "enable SLAAC" FORCE)
38
39 if (NOT OT_LOG_LEVEL)
40     if (CMAKE_BUILD_TYPE STREQUAL "Debug")
41         set(OT_LOG_LEVEL "DEBG" CACHE STRING "set OpenThread log level to DEBG" FORCE)
42     else()
43         set(OT_LOG_LEVEL "INFO" CACHE STRING "set OpenThread log level to INFO" FORCE)
44     endif()
45 endif()
46
47 set(OT_LOG_LEVEL_DYNAMIC ON CACHE BOOL "enable dynamic log level control" FORCE)
48 set(OT_MAC_FILTER ON CACHE STRING "enable MAC filter" FORCE)
49 set(OT_MBEDTLS_CONFIG_FILE "\"${PROJECT_SOURCE_DIR}/third_party/openthread/mbedtls-config.h\"" CACHE STRING "use mbedtls-config.h of this project" FORCE)
50 set(OT_PLATFORM "posix" CACHE STRING "use posix platform" FORCE)
51 set(OT_PLATFORM_NETIF ON CACHE BOOL "enable platform netif" FORCE)
52 set(OT_PLATFORM_UDP ON CACHE BOOL "enable platform UDP" FORCE)
53 set(OT_UDP_FORWARD OFF CACHE BOOL "diable udp forward" FORCE)
54
55 if (OTBR_SRP_ADVERTISING_PROXY)
56     set(OT_SRP_SERVER ON CACHE BOOL "enable SRP server" FORCE)
57     set(OT_ECDSA ON CACHE BOOL "enable ECDSA" FORCE)
58     set(OT_SERVICE ON CACHE BOOL "enable service" FORCE)
59     set(OT_EXTERNAL_HEAP ON CACHE BOOL "enable external heap" FORCE)
60 endif()
61
62 list(APPEND OT_PLATFORM_DEFINES "-DOPENTHREAD_CONFIG_POSIX_SETTINGS_PATH=\"/var/lib/thread\"")
63
64 add_subdirectory(repo EXCLUDE_FROM_ALL)
65
66 target_compile_definitions(ot-config INTERFACE
67     "-DOPENTHREAD_CONFIG_LOG_CLI=1"
68     "-DOPENTHREAD_CONFIG_MAX_STATECHANGE_HANDLERS=3"
69     "-DOPENTHREAD_CONFIG_MLE_STEERING_DATA_SET_OOB_ENABLE=1"
70 )