mirror of
https://github.com/espressif/esp-idf.git
synced 2026-08-11 17:52:00 +03:00
Merge branch 'feture/separate_bt_cmakelists' into 'master'
Feture/separate bt cmakelists See merge request espressif/esp-idf!47905
This commit is contained in:
File diff suppressed because it is too large
Load Diff
203
components/bt/common/CMakeLists.txt
Normal file
203
components/bt/common/CMakeLists.txt
Normal file
@@ -0,0 +1,203 @@
|
||||
function(replace_log_compression_srcs)
|
||||
if(NOT CONFIG_BLE_COMPRESSED_LOG_ENABLE)
|
||||
return()
|
||||
endif()
|
||||
|
||||
get_filename_component(CODE_BASE_PATH "${CMAKE_CURRENT_FUNCTION_LIST_DIR}/.." ABSOLUTE)
|
||||
# When log compression is enabled, selected logs are replaced
|
||||
# by auto-generated macros that emit pre-encoded data.
|
||||
# This eliminates the original format strings, reducing firmware size and
|
||||
# removing runtime formatting overhead, so logs are produced faster and
|
||||
# with less system impact.
|
||||
add_subdirectory(${CMAKE_CURRENT_FUNCTION_LIST_DIR}/ble_log/extension/log_compression)
|
||||
set(LOG_COMPRESSION_TARGET "${LOG_COMPRESSION_TARGET}" PARENT_SCOPE)
|
||||
|
||||
if(LOG_COMPRESSION_TARGET)
|
||||
# Replace the caller's srcs/include_dirs with the compressed-log ones
|
||||
set(srcs "${LOG_COMPRESS_SRCS}" PARENT_SCOPE)
|
||||
set(include_dirs "${LOG_COMPRESS_INCLUDE_DIRS}" PARENT_SCOPE)
|
||||
# LOG_COMPRESS_FILES_WITH_FLAGS format: "file_path|compile_flags"
|
||||
if(LOG_COMPRESS_FILES_WITH_FLAGS)
|
||||
foreach(file_entry ${LOG_COMPRESS_FILES_WITH_FLAGS})
|
||||
# Split by '|' to get file path and flags
|
||||
string(REPLACE "|" ";" file_parts "${file_entry}")
|
||||
list(GET file_parts 0 file_path)
|
||||
list(GET file_parts 1 compile_flags)
|
||||
set_source_files_properties(${file_path}
|
||||
PROPERTIES COMPILE_FLAGS "${compile_flags}")
|
||||
endforeach()
|
||||
endif()
|
||||
else()
|
||||
# Only append extra include dirs, keep caller's srcs/include_dirs intact
|
||||
set(_merged_include_dirs ${include_dirs} ${LOG_COMPRESS_INCLUDE_DIRS})
|
||||
set(include_dirs "${_merged_include_dirs}" PARENT_SCOPE)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
# Make the bt component library depend on the log-compression custom target
|
||||
# so that the Python-driven code-generation step (log index headers and
|
||||
# replacement sources referenced by LOG_COMPRESS_SRCS) finishes before the
|
||||
# component is compiled. Does nothing if compressed log is disabled or no
|
||||
# module actually participates in log compression.
|
||||
function(register_log_compression_dependency)
|
||||
if(NOT CONFIG_BLE_COMPRESSED_LOG_ENABLE)
|
||||
return()
|
||||
endif()
|
||||
if(NOT LOG_COMPRESSION_TARGET)
|
||||
return()
|
||||
endif()
|
||||
|
||||
add_dependencies(${COMPONENT_LIB} ${LOG_COMPRESSION_TARGET})
|
||||
endfunction()
|
||||
|
||||
function(wrap_uart_log_tx_interface)
|
||||
if(NOT CONFIG_BT_ENABLED)
|
||||
return()
|
||||
endif()
|
||||
|
||||
# UART redir wrap flags — needed whenever BLE Log uses UART DMA on port 0,
|
||||
# regardless of whether BLE controller is enabled.
|
||||
if(DEFINED CONFIG_BLE_LOG_PRPH_UART_DMA_PORT)
|
||||
if(CONFIG_BLE_LOG_PRPH_UART_DMA_PORT EQUAL 0)
|
||||
target_link_libraries(${COMPONENT_LIB} INTERFACE "-Wl,--wrap=uart_tx_chars")
|
||||
target_link_libraries(${COMPONENT_LIB} INTERFACE "-Wl,--wrap=uart_write_bytes")
|
||||
target_link_libraries(${COMPONENT_LIB} INTERFACE "-Wl,--wrap=uart_write_bytes_with_break")
|
||||
endif()
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
set(bt_common_srcs "" PARENT_SCOPE)
|
||||
set(bt_common_include_dirs "" PARENT_SCOPE)
|
||||
set(bt_common_priv_include_dirs "" PARENT_SCOPE)
|
||||
|
||||
# API headers that are used in the docs are also compiled
|
||||
# even if CONFIG_BT_ENABLED=n as long as CONFIG_IDF_DOC_BUILD=y
|
||||
if(CONFIG_IDF_DOC_BUILD)
|
||||
set(bt_common_include_dirs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/include/api"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/esp/blufi/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/esp/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/hci_log/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/ble_log/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/ble_log/deprecated/include"
|
||||
PARENT_SCOPE
|
||||
)
|
||||
return()
|
||||
endif()
|
||||
|
||||
if(NOT CONFIG_BT_ENABLED)
|
||||
return()
|
||||
endif()
|
||||
|
||||
list(APPEND bt_common_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/core/btc_alarm.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/esp_blufi_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/hci_log/bt_hci_log.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/core/btc_manage.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/core/btc_task.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/esp/blufi/blufi_prf.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/esp/blufi/blufi_protocol.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/osi/alarm.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/osi/allocator.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/osi/buffer.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/osi/config.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/osi/fixed_queue.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/osi/pkt_queue.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/osi/fixed_pkt_queue.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/osi/future.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/osi/hash_functions.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/osi/hash_map.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/osi/list.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/osi/mutex.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/osi/thread.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/osi/osi.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/osi/semaphore.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/ble_log/deprecated/ble_log_spi_out.c"
|
||||
)
|
||||
|
||||
list(APPEND bt_common_include_dirs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/osi/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/include/api"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/esp/blufi/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/esp/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/hci_log/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/ble_log/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/ble_log/deprecated/include"
|
||||
)
|
||||
|
||||
list(APPEND bt_common_priv_include_dirs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/include"
|
||||
)
|
||||
|
||||
if(CONFIG_BLE_LOG_ENABLED)
|
||||
list(APPEND bt_common_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/ble_log/src/ble_log.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/ble_log/src/ble_log_lbm.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/ble_log/src/ble_log_rt.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/ble_log/src/ble_log_util.c"
|
||||
)
|
||||
|
||||
list(APPEND bt_common_include_dirs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/ble_log/include"
|
||||
)
|
||||
|
||||
list(APPEND bt_common_priv_include_dirs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/ble_log/src/internal_include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/ble_log/src/internal_include/prph"
|
||||
)
|
||||
|
||||
# Timestamp synchronization extension
|
||||
if(CONFIG_BLE_LOG_TS_ENABLED)
|
||||
list(APPEND bt_common_srcs "${CMAKE_CURRENT_LIST_DIR}/ble_log/src/ble_log_ts.c")
|
||||
endif()
|
||||
|
||||
# Peripheral interface implementation
|
||||
if(CONFIG_BLE_LOG_PRPH_DUMMY)
|
||||
list(APPEND bt_common_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/ble_log/src/prph/ble_log_prph_dummy.c"
|
||||
)
|
||||
elseif(CONFIG_BLE_LOG_PRPH_SPI_MASTER_DMA)
|
||||
list(APPEND bt_common_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/ble_log/src/prph/ble_log_prph_spi_master_dma.c"
|
||||
)
|
||||
elseif(CONFIG_BLE_LOG_PRPH_UART_DMA)
|
||||
list(APPEND bt_common_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/ble_log/src/prph/ble_log_prph_uart_dma.c"
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Compile TinyCrypt if:
|
||||
# 1. Controller uses TinyCrypt (not mbedTLS), OR
|
||||
# 2. NimBLE uses TinyCrypt (not mbedTLS), OR
|
||||
# 3. Bluedroid Host SMP uses TinyCrypt
|
||||
if(CONFIG_BT_SMP_CRYPTO_STACK_TINYCRYPT OR NOT CONFIG_BT_NIMBLE_CRYPTO_STACK_MBEDTLS)
|
||||
list(APPEND bt_common_include_dirs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/tinycrypt/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/tinycrypt/port"
|
||||
)
|
||||
list(APPEND bt_common_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/tinycrypt/src/utils.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/tinycrypt/src/sha256.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/tinycrypt/src/ecc.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/tinycrypt/src/ctr_prng.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/tinycrypt/src/ctr_mode.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/tinycrypt/src/aes_decrypt.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/tinycrypt/src/aes_encrypt.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/tinycrypt/src/ccm_mode.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/tinycrypt/src/ecc_dsa.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/tinycrypt/src/cmac_mode.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/tinycrypt/src/ecc_dh.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/tinycrypt/src/hmac_prng.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/tinycrypt/src/ecc_platform_specific.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/tinycrypt/src/hmac.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/tinycrypt/src/cbc_mode.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/tinycrypt/port/esp_tinycrypt_port.c"
|
||||
)
|
||||
endif()
|
||||
|
||||
# Export the variables to the parent scope
|
||||
set(bt_common_srcs "${bt_common_srcs}" PARENT_SCOPE)
|
||||
set(bt_common_include_dirs "${bt_common_include_dirs}" PARENT_SCOPE)
|
||||
set(bt_common_priv_include_dirs "${bt_common_priv_include_dirs}" PARENT_SCOPE)
|
||||
@@ -132,6 +132,12 @@ if(LOG_COMPRESSED_MODULE)
|
||||
string(REPLACE ";" "|" MODULE_CODE_PATH "${LOG_COMPRESSED_MODULE_CODE_PATH}")
|
||||
set(MATCH_PATTERN "(${MODULE_CODE_PATH}).+\\.c")
|
||||
foreach(src ${srcs})
|
||||
# Normalize absolute paths to relative paths (relative to CODE_BASE_PATH)
|
||||
# so that pattern matching works and .compressed_srcs/ has a clean layout
|
||||
if(IS_ABSOLUTE "${src}")
|
||||
get_filename_component(src "${src}" ABSOLUTE)
|
||||
file(RELATIVE_PATH src "${CODE_BASE_PATH}" "${src}")
|
||||
endif()
|
||||
if(src MATCHES ${MATCH_PATTERN})
|
||||
set(dest "${LOG_COMPRESSED_SRCS_DIR}/${src}")
|
||||
file(WRITE "${dest}" "")
|
||||
|
||||
@@ -699,9 +699,15 @@ class LogCompressor:
|
||||
compressed_file_cnt = 0
|
||||
total_cnt = 0
|
||||
for src in srcs:
|
||||
if pattern.match(src):
|
||||
src_path = self.code_base_path / src
|
||||
dest_path = self.bt_compressed_srcs_path / src
|
||||
# Convert absolute paths to relative (to code_base_path) for pattern matching
|
||||
src_for_match = src
|
||||
try:
|
||||
src_for_match = str(Path(src).relative_to(self.code_base_path))
|
||||
except ValueError:
|
||||
pass # Not under code_base_path, keep as-is
|
||||
if pattern.match(src_for_match):
|
||||
src_path = self.code_base_path / src_for_match
|
||||
dest_path = self.bt_compressed_srcs_path / src_for_match
|
||||
temp_path = f'{dest_path}.tmp'
|
||||
total_cnt += 1
|
||||
# Skip if already processed
|
||||
|
||||
132
components/bt/controller/CMakeLists.txt
Normal file
132
components/bt/controller/CMakeLists.txt
Normal file
@@ -0,0 +1,132 @@
|
||||
# Function to register the libraries for the BT controller
|
||||
function(register_bt_ctrl_libs)
|
||||
# TODO: The coex will use controller library even if CONFIG_BT_CONTROLLER_ENABLED=n which is not correct.
|
||||
if(CONFIG_IDF_TARGET_ESP32)
|
||||
add_prebuilt_library(bt_btdm_app "${CMAKE_CURRENT_FUNCTION_LIST_DIR}/lib_esp32/esp32/libbtdm_app.a")
|
||||
target_link_libraries(${COMPONENT_LIB} PRIVATE bt_btdm_app)
|
||||
target_link_options(${COMPONENT_LIB} INTERFACE "SHELL:-u ld_include_hli_vectors_bt")
|
||||
endif()
|
||||
|
||||
if(NOT CONFIG_BT_CONTROLLER_ENABLED)
|
||||
return()
|
||||
endif()
|
||||
|
||||
if(CONFIG_IDF_TARGET_ESP32C3)
|
||||
if(CONFIG_BT_CTRL_RUN_IN_FLASH_ONLY)
|
||||
set(lib_name "btdm_app_flash")
|
||||
else()
|
||||
set(lib_name "btdm_app")
|
||||
endif()
|
||||
add_prebuilt_library(bt_btdm_app
|
||||
"${CMAKE_CURRENT_FUNCTION_LIST_DIR}/lib_esp32c3_family/esp32c3/lib${lib_name}.a")
|
||||
target_link_libraries(${COMPONENT_LIB} PRIVATE bt_btdm_app)
|
||||
elseif(CONFIG_IDF_TARGET_ESP32S3)
|
||||
if(CONFIG_BT_CTRL_RUN_IN_FLASH_ONLY)
|
||||
set(lib_name "btdm_app_flash")
|
||||
else()
|
||||
set(lib_name "btdm_app")
|
||||
endif()
|
||||
add_prebuilt_library(bt_btdm_app
|
||||
"${CMAKE_CURRENT_FUNCTION_LIST_DIR}/lib_esp32c3_family/esp32s3/lib${lib_name}.a")
|
||||
target_link_libraries(${COMPONENT_LIB} PRIVATE bt_btdm_app)
|
||||
elseif(NOT CONFIG_IDF_TARGET_ESP32)
|
||||
set(lib_path "${CMAKE_CURRENT_FUNCTION_LIST_DIR}/lib_${TARGET_SRC_NAME}/${TARGET_SRC_NAME}-bt-lib")
|
||||
# BLE controller library
|
||||
if(NOT CONFIG_BT_DUAL_MODE_ARCH OR CONFIG_BT_CTRL_BLE_ENABLE)
|
||||
if(EXISTS "${lib_path}/libble_app.a")
|
||||
if(CONFIG_BT_CTRL_RUN_IN_FLASH_ONLY AND EXISTS "${lib_path}/libble_app_flash.a")
|
||||
add_prebuilt_library(libble_app "${lib_path}/libble_app_flash.a" REQUIRES esp_phy bt)
|
||||
else()
|
||||
add_prebuilt_library(libble_app "${lib_path}/libble_app.a" REQUIRES esp_phy bt)
|
||||
endif()
|
||||
else()
|
||||
if(CONFIG_BT_CTRL_RUN_IN_FLASH_ONLY AND EXISTS "${lib_path}/${idf_target}/libble_app_flash.a")
|
||||
add_prebuilt_library(libble_app "${lib_path}/${idf_target}/libble_app_flash.a" REQUIRES esp_phy bt)
|
||||
else()
|
||||
add_prebuilt_library(libble_app "${lib_path}/${idf_target}/libble_app.a" REQUIRES esp_phy bt)
|
||||
endif()
|
||||
endif()
|
||||
target_link_libraries(${COMPONENT_LIB} PRIVATE libble_app)
|
||||
endif()
|
||||
# BREDR controller library
|
||||
if(CONFIG_BT_CTRL_BREDR_ENABLE)
|
||||
if(EXISTS "${lib_path}/libbredr_app.a")
|
||||
add_prebuilt_library(libbredr_app "${lib_path}/libbredr_app.a" REQUIRES esp_phy bt)
|
||||
else()
|
||||
add_prebuilt_library(libbredr_app "${lib_path}/${idf_target}/libbredr_app.a" REQUIRES esp_phy bt)
|
||||
endif()
|
||||
target_link_libraries(${COMPONENT_LIB} PRIVATE libbredr_app)
|
||||
endif()
|
||||
# BTDM common library
|
||||
if(CONFIG_BT_DUAL_MODE_ARCH)
|
||||
if(EXISTS "${lib_path}/libbtdm_common.a")
|
||||
add_prebuilt_library(libbtdm_common "${lib_path}/libbtdm_common.a" esp_phy bt)
|
||||
else()
|
||||
add_prebuilt_library(libbtdm_common "${lib_path}/${idf_target}/libbtdm_common.a" esp_phy bt)
|
||||
endif()
|
||||
target_link_libraries(${COMPONENT_LIB} PRIVATE libbtdm_common)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Used to dump logs in the panic handler
|
||||
if(CONFIG_BT_LE_CONTROLLER_LOG_WRAP_PANIC_HANDLER_ENABLE)
|
||||
target_link_options(${COMPONENT_LIB} INTERFACE "-Wl,--wrap=esp_panic_handler")
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
set(bt_ctrl_srcs "" PARENT_SCOPE)
|
||||
set(bt_ctrl_include_dirs "" PARENT_SCOPE)
|
||||
set(bt_ctrl_ldscripts "${ldscripts}")
|
||||
set(bt_ctrl_ldscripts "${bt_ctrl_ldscripts}" PARENT_SCOPE)
|
||||
|
||||
# API headers that are used in the docs are also compiled
|
||||
# even if CONFIG_BT_ENABLED=n as long as CONFIG_IDF_DOC_BUILD=y
|
||||
if(CONFIG_IDF_DOC_BUILD AND CONFIG_SOC_BT_SUPPORTED)
|
||||
get_filename_component(
|
||||
_bt_ctrl_absolute_include_dir
|
||||
"${CMAKE_CURRENT_LIST_DIR}/../include/${TARGET_SRC_NAME}/include"
|
||||
ABSOLUTE
|
||||
)
|
||||
set(bt_ctrl_include_dirs "${_bt_ctrl_absolute_include_dir}" PARENT_SCOPE)
|
||||
return()
|
||||
endif()
|
||||
|
||||
if(NOT CONFIG_BT_CONTROLLER_ENABLED)
|
||||
return()
|
||||
endif()
|
||||
|
||||
# Get all the .c files in the TARGET_SRC_NAME directory
|
||||
file(GLOB_RECURSE _CTRL_SRCS "${TARGET_SRC_NAME}/*.c")
|
||||
list(APPEND bt_ctrl_srcs ${_CTRL_SRCS})
|
||||
list(APPEND bt_ctrl_include_dirs "${CMAKE_CURRENT_LIST_DIR}/../include/${TARGET_SRC_NAME}/include")
|
||||
|
||||
# TODO: Move this to a separate file for the controller and the host
|
||||
if(CONFIG_SOC_ESP_NIMBLE_CONTROLLER AND NOT CONFIG_BT_NIMBLE_ENABLED)
|
||||
list(APPEND bt_ctrl_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/../host/nimble/port/src/esp_nimble_mem.c"
|
||||
)
|
||||
list(APPEND bt_ctrl_include_dirs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/../host/nimble/port/include"
|
||||
)
|
||||
endif()
|
||||
|
||||
# Add the linker scripts
|
||||
if(CONFIG_IDF_TARGET_ESP32)
|
||||
list(APPEND bt_ctrl_srcs "${CMAKE_CURRENT_LIST_DIR}/esp32/hli_vectors.S")
|
||||
list(APPEND bt_ctrl_ldscripts "${CMAKE_CURRENT_LIST_DIR}/linker_rw_bt_controller.lf")
|
||||
elseif(CONFIG_IDF_TARGET_ESP32C3)
|
||||
list(APPEND bt_ctrl_ldscripts "${CMAKE_CURRENT_LIST_DIR}/linker_rw_bt_controller.lf")
|
||||
elseif(CONFIG_IDF_TARGET_ESP32S3)
|
||||
list(APPEND bt_ctrl_ldscripts "${CMAKE_CURRENT_LIST_DIR}/linker_rw_bt_controller.lf")
|
||||
elseif(CONFIG_IDF_TARGET_ESP32C2)
|
||||
set(bt_ctrl_ldscripts "${CMAKE_CURRENT_LIST_DIR}/linker_esp32c2.lf")
|
||||
elseif(CONFIG_BT_DUAL_MODE_ARCH)
|
||||
list(APPEND bt_ctrl_ldscripts "${CMAKE_CURRENT_LIST_DIR}/linker_esp_btdm_controller.lf")
|
||||
else()
|
||||
list(APPEND bt_ctrl_ldscripts "${CMAKE_CURRENT_LIST_DIR}/linker_esp_ble_controller.lf")
|
||||
endif()
|
||||
|
||||
# Export the variables to the parent scope
|
||||
set(bt_ctrl_srcs "${bt_ctrl_srcs}" PARENT_SCOPE)
|
||||
set(bt_ctrl_include_dirs "${bt_ctrl_include_dirs}" PARENT_SCOPE)
|
||||
set(bt_ctrl_ldscripts "${bt_ctrl_ldscripts}" PARENT_SCOPE)
|
||||
209
components/bt/esp_ble_audio/CMakeLists.txt
Normal file
209
components/bt/esp_ble_audio/CMakeLists.txt
Normal file
@@ -0,0 +1,209 @@
|
||||
function(register_ble_audio_libs)
|
||||
if(NOT CONFIG_BT_AUDIO)
|
||||
return()
|
||||
endif()
|
||||
|
||||
if(CONFIG_SOC_BLE_AUDIO_SUPPORTED)
|
||||
add_prebuilt_library(ble_audio "${CMAKE_CURRENT_FUNCTION_LIST_DIR}/lib/lib/${idf_target}/libble_audio.a")
|
||||
target_link_libraries(${COMPONENT_LIB} PRIVATE ble_audio)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
set(ble_audio_srcs "" PARENT_SCOPE)
|
||||
set(ble_audio_include_dirs "" PARENT_SCOPE)
|
||||
set(ble_audio_priv_include_dirs "" PARENT_SCOPE)
|
||||
|
||||
# API headers that are used in the docs are also compiled
|
||||
# even if CONFIG_BT_ENABLED=n as long as CONFIG_IDF_DOC_BUILD=y
|
||||
if(CONFIG_IDF_DOC_BUILD)
|
||||
set(ble_audio_include_dirs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/iso/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/audio/include"
|
||||
PARENT_SCOPE
|
||||
)
|
||||
return()
|
||||
endif()
|
||||
|
||||
if(CONFIG_BT_CONTROLLER_ONLY OR (NOT CONFIG_BT_ISO AND NOT CONFIG_BT_AUDIO))
|
||||
return()
|
||||
endif()
|
||||
|
||||
if(CONFIG_BT_ISO)
|
||||
list(APPEND ble_audio_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/adapter/nimble/gatt/gatt.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/adapter/nimble/gatt/gatt.db.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/adapter/nimble/gatt/gatt.nrp.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/adapter/nimble/gap.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/adapter/nimble/iso.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/common/adv.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/common/conn.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/common/gatt.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/common/hci.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/common/host.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/common/iso.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/common/scan.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/common/task.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/common/app/gap.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/common/app/gatt.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/utils/crc/crc32_sw.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/utils/addr.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/utils/bt_str.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/utils/buf.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/utils/crypto.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/utils/timer.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/utils/utf8.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/utils/utils.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/utils/uuid.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/iso/iso.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/iso/esp_ble_iso_common_api.c"
|
||||
)
|
||||
|
||||
if(CONFIG_BT_OTS OR CONFIG_BT_OTS_CLIENT)
|
||||
list(APPEND ble_audio_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/common/l2cap.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/adapter/nimble/l2cap.c"
|
||||
)
|
||||
endif()
|
||||
|
||||
list(APPEND ble_audio_include_dirs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/iso/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/adapter"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/include/subsys/bluetooth"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/include/subsys/bluetooth/host"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/include"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(CONFIG_BT_AUDIO)
|
||||
list(APPEND ble_audio_include_dirs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/audio/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/include/subsys/bluetooth/host"
|
||||
)
|
||||
|
||||
list(APPEND ble_audio_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/adapter/nimble/profiles/server.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/adapter/nimble/init.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/common/init.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/audio/esp_ble_audio_aics_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/audio/esp_ble_audio_bap_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/audio/esp_ble_audio_cap_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/audio/esp_ble_audio_ccp_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/audio/esp_ble_audio_codec_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/audio/esp_ble_audio_common_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/audio/esp_ble_audio_csip_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/audio/esp_ble_audio_gmap_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/audio/esp_ble_audio_has_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/audio/esp_ble_audio_mcc_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/audio/esp_ble_audio_media_proxy_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/audio/esp_ble_audio_micp_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/audio/esp_ble_audio_pacs_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/audio/esp_ble_audio_pbp_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/audio/esp_ble_audio_tbs_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/audio/esp_ble_audio_tmap_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/audio/esp_ble_audio_vcp_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/audio/esp_ble_audio_vocs_api.c"
|
||||
)
|
||||
|
||||
if(CONFIG_BT_ASCS)
|
||||
list(APPEND ble_audio_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/adapter/nimble/profiles/ascs.c"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(CONFIG_BT_PACS)
|
||||
list(APPEND ble_audio_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/adapter/nimble/profiles/pacs.c"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(CONFIG_BT_BAP_SCAN_DELEGATOR)
|
||||
list(APPEND ble_audio_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/adapter/nimble/profiles/bass.c"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(CONFIG_BT_CAP_ACCEPTOR)
|
||||
list(APPEND ble_audio_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/adapter/nimble/profiles/cas.c"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(CONFIG_BT_CSIP_SET_MEMBER)
|
||||
list(APPEND ble_audio_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/adapter/nimble/profiles/csis.c"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(CONFIG_BT_TBS)
|
||||
list(APPEND ble_audio_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/adapter/nimble/profiles/tbs.c"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(CONFIG_BT_TMAP)
|
||||
list(APPEND ble_audio_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/adapter/nimble/profiles/tmas.c"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(CONFIG_BT_VCP_VOL_REND)
|
||||
list(APPEND ble_audio_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/adapter/nimble/profiles/vcs.c"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(CONFIG_BT_MICP_MIC_DEV)
|
||||
list(APPEND ble_audio_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/adapter/nimble/profiles/mics.c"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(CONFIG_BT_MCS)
|
||||
list(APPEND ble_audio_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/adapter/nimble/profiles/mcs.c"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(CONFIG_BT_HAS)
|
||||
list(APPEND ble_audio_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/adapter/nimble/profiles/has.c"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(CONFIG_BT_OTS OR CONFIG_BT_OTS_CLIENT)
|
||||
list(APPEND ble_audio_include_dirs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/services/ots"
|
||||
)
|
||||
|
||||
list(APPEND ble_audio_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/services/ots/ots_l2cap.c"
|
||||
)
|
||||
|
||||
if(CONFIG_BT_OTS)
|
||||
list(APPEND ble_audio_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/services/ots/ots_oacp.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/services/ots/ots_obj_manager.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/services/ots/ots_olcp.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/services/ots/ots.c"
|
||||
)
|
||||
|
||||
if(CONFIG_BT_OTS_DIR_LIST_OBJ)
|
||||
list(APPEND ble_audio_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/services/ots/ots_dir_list.c"
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(CONFIG_BT_OTS_CLIENT)
|
||||
list(APPEND ble_audio_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/host/services/ots/ots_client.c"
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Export the variables to the parent scope
|
||||
set(ble_audio_srcs "${ble_audio_srcs}" PARENT_SCOPE)
|
||||
set(ble_audio_include_dirs "${ble_audio_include_dirs}" PARENT_SCOPE)
|
||||
set(ble_audio_priv_include_dirs "${ble_audio_priv_include_dirs}" PARENT_SCOPE)
|
||||
221
components/bt/esp_ble_mesh/CMakeLists.txt
Normal file
221
components/bt/esp_ble_mesh/CMakeLists.txt
Normal file
@@ -0,0 +1,221 @@
|
||||
function(register_ble_mesh_libs)
|
||||
if(NOT CONFIG_BLE_MESH)
|
||||
return()
|
||||
endif()
|
||||
|
||||
if(CONFIG_BLE_MESH_V11_SUPPORT)
|
||||
add_prebuilt_library(ble_mesh "esp_ble_mesh/lib/lib/${idf_target}/libble_mesh.a")
|
||||
target_link_libraries(${COMPONENT_LIB} PRIVATE ble_mesh)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
set(ble_mesh_srcs "" PARENT_SCOPE)
|
||||
set(ble_mesh_include_dirs "" PARENT_SCOPE)
|
||||
|
||||
# API headers that are used in the docs are also compiled
|
||||
# even if CONFIG_BT_ENABLED=n as long as CONFIG_IDF_DOC_BUILD=y
|
||||
if(CONFIG_IDF_DOC_BUILD)
|
||||
set(ble_mesh_include_dirs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/common/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/storage"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/models/common/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/models/client/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/models/server/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/core/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/models/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api"
|
||||
# BLE Mesh v1.1 headers
|
||||
"${CMAKE_CURRENT_LIST_DIR}/lib/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/api/core/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/api/models/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/btc/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/dfu"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/mbt"
|
||||
PARENT_SCOPE
|
||||
)
|
||||
return()
|
||||
endif()
|
||||
|
||||
if(NOT CONFIG_BLE_MESH)
|
||||
return()
|
||||
endif()
|
||||
|
||||
if(CONFIG_BLE_MESH_USE_UNIFIED_CRYPTO)
|
||||
message(WARNING "This configuration path is deprecated and will be removed"
|
||||
"in a future version. Please use the corresponding Kconfig"
|
||||
"options under $IDF_PATH/components/bt/common/Kconfig.")
|
||||
endif()
|
||||
|
||||
list(APPEND ble_mesh_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/core/esp_ble_mesh_ble_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/core/esp_ble_mesh_common_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/core/esp_ble_mesh_local_data_operation_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/core/esp_ble_mesh_low_power_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/core/esp_ble_mesh_networking_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/core/esp_ble_mesh_provisioning_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/core/esp_ble_mesh_proxy_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/models/esp_ble_mesh_config_model_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/models/esp_ble_mesh_generic_model_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/models/esp_ble_mesh_health_model_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/models/esp_ble_mesh_lighting_model_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/models/esp_ble_mesh_sensor_model_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/models/esp_ble_mesh_time_scene_model_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/btc_ble_mesh_ble.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/btc_ble_mesh_config_model.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/btc_ble_mesh_generic_model.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/btc_ble_mesh_health_model.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/btc_ble_mesh_lighting_model.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/btc_ble_mesh_prov.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/btc_ble_mesh_sensor_model.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/btc_ble_mesh_time_scene_model.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/common/atomic.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/common/buf.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/common/common.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/common/kernel.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/common/mutex.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/common/queue.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/common/timer.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/common/utils.c"
|
||||
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/storage/settings_nvs.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/storage/settings_uid.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/storage/settings.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/access.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/adv_common.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/beacon.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/cfg_cli.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/cfg_srv.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/crypto.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/fast_prov.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/friend.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/health_cli.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/health_srv.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/heartbeat.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/local.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/lpn.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/main.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/net.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/prov_common.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/prov_node.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/prov_pvnr.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/proxy_client.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/proxy_server.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/pvnr_mgmt.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/rpl.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/scan.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/test.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/models/common/device_property.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/models/common/model_common.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/models/client/client_common.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/models/client/generic_client.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/models/client/lighting_client.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/models/client/sensor_client.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/models/client/time_scene_client.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/models/server/generic_server.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/models/server/lighting_server.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/models/server/sensor_server.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/models/server/server_common.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/models/server/state_binding.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/models/server/state_transition.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/models/server/time_scene_server.c"
|
||||
)
|
||||
|
||||
if(CONFIG_BLE_MESH_SUPPORT_MULTI_ADV)
|
||||
list(APPEND ble_mesh_srcs "${CMAKE_CURRENT_LIST_DIR}/core/ext_adv.c")
|
||||
else()
|
||||
list(APPEND ble_mesh_srcs "${CMAKE_CURRENT_LIST_DIR}/core/adv.c")
|
||||
endif()
|
||||
|
||||
if(CONFIG_BLE_MESH_SUPPORT_BLE_ADV)
|
||||
list(APPEND ble_mesh_srcs "${CMAKE_CURRENT_LIST_DIR}/core/ble_adv.c")
|
||||
endif()
|
||||
|
||||
# Select crypto implementation based on config
|
||||
if(CONFIG_BT_SMP_CRYPTO_STACK_TINYCRYPT)
|
||||
list(APPEND ble_mesh_srcs "${CMAKE_CURRENT_LIST_DIR}/common/crypto_tc.c")
|
||||
elseif(CONFIG_BT_SMP_CRYPTO_STACK_MBEDTLS)
|
||||
if(CONFIG_MBEDTLS_VER_4_X_SUPPORT)
|
||||
list(APPEND ble_mesh_srcs "${CMAKE_CURRENT_LIST_DIR}/common/crypto_psa.c")
|
||||
else()
|
||||
list(APPEND ble_mesh_srcs "${CMAKE_CURRENT_LIST_DIR}/common/crypto_mbedtls.c")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
list(APPEND ble_mesh_include_dirs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/common/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/core/storage"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/models/common/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/models/client/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/models/server/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/core/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/models/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api"
|
||||
)
|
||||
|
||||
if(CONFIG_BLE_MESH_V11_SUPPORT)
|
||||
list(APPEND ble_mesh_include_dirs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/lib/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/api/core/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/api/models/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/btc/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/include"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/dfu"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/mbt"
|
||||
)
|
||||
|
||||
list(APPEND ble_mesh_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/api/core/esp_ble_mesh_agg_model_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/api/core/esp_ble_mesh_brc_model_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/api/core/esp_ble_mesh_cm_data_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/api/core/esp_ble_mesh_df_model_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/api/core/esp_ble_mesh_lcd_model_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/api/core/esp_ble_mesh_odp_model_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/api/core/esp_ble_mesh_prb_model_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/api/core/esp_ble_mesh_rpr_model_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/api/core/esp_ble_mesh_sar_model_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/api/core/esp_ble_mesh_srpl_model_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/api/models/esp_ble_mesh_mbt_model_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/api/models/esp_ble_mesh_dfu_model_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/api/models/esp_ble_mesh_dfu_slot_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/btc/btc_ble_mesh_agg_model.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/btc/btc_ble_mesh_brc_model.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/btc/btc_ble_mesh_df_model.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/btc/btc_ble_mesh_dfu_model.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/btc/btc_ble_mesh_dfu_slot.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/btc/btc_ble_mesh_lcd_model.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/btc/btc_ble_mesh_mbt_model.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/btc/btc_ble_mesh_odp_model.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/btc/btc_ble_mesh_prb_model.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/btc/btc_ble_mesh_rpr_model.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/btc/btc_ble_mesh_sar_model.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/btc/btc_ble_mesh_srpl_model.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/mbt/blob_srv.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/mbt/blob_cli.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/dfu/dfu_cli.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/dfu/dfu_srv.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/dfu/dfu_slot.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/dfu/dfu_metadata.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/dfu/dfd_srv.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/v1.1/dfu/dfd_cli.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/lib/ext.c"
|
||||
)
|
||||
|
||||
if(CONFIG_BLE_MESH_SAR_ENHANCEMENT)
|
||||
list(APPEND ble_mesh_srcs "${CMAKE_CURRENT_LIST_DIR}/core/transport.enh.c")
|
||||
else()
|
||||
list(APPEND ble_mesh_srcs "${CMAKE_CURRENT_LIST_DIR}/core/transport.c")
|
||||
endif()
|
||||
else()
|
||||
list(APPEND ble_mesh_srcs "${CMAKE_CURRENT_LIST_DIR}/core/transport.c")
|
||||
endif()
|
||||
|
||||
# Export the variables to the parent scope
|
||||
set(ble_mesh_srcs "${ble_mesh_srcs}" PARENT_SCOPE)
|
||||
set(ble_mesh_include_dirs "${ble_mesh_include_dirs}" PARENT_SCOPE)
|
||||
406
components/bt/host/bluedroid/CMakeLists.txt
Normal file
406
components/bt/host/bluedroid/CMakeLists.txt
Normal file
@@ -0,0 +1,406 @@
|
||||
# TODO: These warnings should be resolved in the Bluedroid code
|
||||
function(set_bluedroid_host_compile_flags)
|
||||
if(NOT CONFIG_BT_BLUEDROID_ENABLED)
|
||||
return()
|
||||
endif()
|
||||
|
||||
set_source_files_properties(
|
||||
"${CMAKE_CURRENT_FUNCTION_LIST_DIR}/bta/gatt/bta_gattc_act.c"
|
||||
"${CMAKE_CURRENT_FUNCTION_LIST_DIR}/bta/gatt/bta_gattc_cache.c"
|
||||
"${CMAKE_CURRENT_FUNCTION_LIST_DIR}/btc/profile/std/gatt/btc_gatt_util.c"
|
||||
"${CMAKE_CURRENT_FUNCTION_LIST_DIR}/btc/profile/std/gatt/btc_gatts.c"
|
||||
PROPERTIES COMPILE_FLAGS -Wno-address-of-packed-member
|
||||
)
|
||||
|
||||
if(NOT CMAKE_BUILD_EARLY_EXPANSION)
|
||||
set(jump_table_opts "-fjump-tables")
|
||||
if(NOT (CMAKE_C_COMPILER_ID MATCHES "Clang") )
|
||||
set(jump_table_opts "${jump_table_opts} -ftree-switch-conversion")
|
||||
endif()
|
||||
set_source_files_properties("${CMAKE_CURRENT_FUNCTION_LIST_DIR}/bta/hf_ag/bta_ag_cmd.c"
|
||||
"${CMAKE_CURRENT_FUNCTION_LIST_DIR}/btc/profile/std/gap/btc_gap_ble.c"
|
||||
PROPERTIES COMPILE_FLAGS "${jump_table_opts}")
|
||||
endif()
|
||||
|
||||
if(CMAKE_C_COMPILER_ID MATCHES "GNU" AND CMAKE_C_COMPILER_VERSION VERSION_GREATER 15.0)
|
||||
set_source_files_properties("${CMAKE_CURRENT_FUNCTION_LIST_DIR}/device/controller.c"
|
||||
PROPERTIES COMPILE_FLAGS "-Wno-unterminated-string-initialization")
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
set(bluedroid_host_srcs "" PARENT_SCOPE)
|
||||
set(bluedroid_host_include_dirs "" PARENT_SCOPE)
|
||||
set(bluedroid_host_priv_include_dirs "" PARENT_SCOPE)
|
||||
|
||||
# API headers that are used in the docs are also compiled
|
||||
# even if CONFIG_BT_ENABLED=n as long as CONFIG_IDF_DOC_BUILD=y
|
||||
if(CONFIG_IDF_DOC_BUILD)
|
||||
set(bluedroid_host_include_dirs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/include/api"
|
||||
PARENT_SCOPE
|
||||
)
|
||||
return()
|
||||
endif()
|
||||
|
||||
if(NOT CONFIG_BT_BLUEDROID_ENABLED)
|
||||
return()
|
||||
endif()
|
||||
|
||||
list(APPEND bluedroid_host_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/esp_a2dp_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/esp_avrc_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/esp_bluedroid_hci.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/esp_bt_device.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/esp_bt_main.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/esp_gap_ble_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/esp_gap_bt_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/esp_gatt_common_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/esp_gattc_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/esp_gatts_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/esp_hidd_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/esp_hidh_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/esp_hf_ag_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/esp_hf_client_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/esp_spp_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/esp_sdp_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/esp_l2cap_bt_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/esp_pbac_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/ar/bta_ar.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/av/bta_av_aact.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/av/bta_av_act.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/av/bta_av_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/av/bta_av_ca_act.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/av/bta_av_ca_sm.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/av/bta_av_cfg.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/av/bta_av_ci.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/av/bta_av_main.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/av/bta_av_sbc.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/av/bta_av_ssm.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/dm/bta_dm_act.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/dm/bta_dm_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/dm/bta_dm_cfg.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/dm/bta_dm_ci.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/dm/bta_dm_co.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/dm/bta_dm_main.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/dm/bta_dm_pm.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/dm/bta_dm_sco.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/dm/bta_dm_qos.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/gatt/bta_gatt_common.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/gatt/bta_gattc_act.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/gatt/bta_gattc_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/gatt/bta_gattc_cache.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/gatt/bta_gattc_ci.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/gatt/bta_gattc_co.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/gatt/bta_gattc_main.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/gatt/bta_gattc_utils.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/gatt/bta_gatts_act.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/gatt/bta_gatts_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/gatt/bta_gatts_co.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/gatt/bta_gatts_main.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/gatt/bta_gatts_utils.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hd/bta_hd_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hd/bta_hd_act.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hd/bta_hd_main.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hh/bta_hh_act.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hh/bta_hh_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hh/bta_hh_cfg.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hh/bta_hh_le.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hh/bta_hh_main.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hh/bta_hh_utils.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/jv/bta_jv_act.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/jv/bta_jv_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/jv/bta_jv_cfg.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/jv/bta_jv_main.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hf_ag/bta_ag_act.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hf_ag/bta_ag_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hf_ag/bta_ag_at.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hf_ag/bta_ag_cfg.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hf_ag/bta_ag_cmd.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hf_ag/bta_ag_main.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hf_ag/bta_ag_rfc.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hf_ag/bta_ag_sco.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hf_ag/bta_ag_sdp.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hf_client/bta_hf_client_act.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hf_client/bta_hf_client_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hf_client/bta_hf_client_at.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hf_client/bta_hf_client_cmd.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hf_client/bta_hf_client_main.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hf_client/bta_hf_client_rfc.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hf_client/bta_hf_client_sco.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/hf_client/bta_hf_client_sdp.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/pba/bta_pba_client_act.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/pba/bta_pba_client_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/pba/bta_pba_client_main.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/pba/bta_pba_client_sdp.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/sdp/bta_sdp.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/sdp/bta_sdp_act.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/sdp/bta_sdp_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/sdp/bta_sdp_cfg.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/sys/bta_sys_conn.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/sys/bta_sys_main.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/bta/sys/utl.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/core/btc_ble_storage.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/core/btc_config.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/core/btc_dev.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/core/btc_dm.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/core/btc_main.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/core/btc_profile_queue.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/core/btc_sec.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/core/btc_sm.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/core/btc_storage.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/core/btc_util.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/a2dp/bta_av_co.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/a2dp/btc_a2dp.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/a2dp/btc_a2dp_control.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/a2dp/btc_a2dp_sink.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/a2dp/btc_a2dp_sink_ext_coedc.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/a2dp/btc_a2dp_source.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/a2dp/btc_a2dp_source_ext_codec.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/a2dp/btc_av.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/avrc/btc_avrc.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/avrc/bta_avrc_co.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/hf_ag/bta_ag_co.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/hf_ag/btc_hf_ag.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/hf_client/btc_hf_client.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/hf_client/bta_hf_client_co.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/hid/btc_hd.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/hid/btc_hh.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/hid/bta_hh_co.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/gap/btc_gap_ble.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/gap/btc_gap_bt.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/gap/bta_gap_bt_co.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/gatt/btc_gatt_common.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/gatt/btc_gatt_util.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/gatt/btc_gattc.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/gatt/btc_gatts.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/spp/btc_spp.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/sdp/btc_sdp.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/l2cap/btc_l2cap.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/pba/btc_pba_client.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/device/bdaddr.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/device/controller.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/device/interop.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/hci/hci_audio.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/hci/hci_hal_h4.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/hci/hci_layer.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/hci/hci_packet_factory.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/hci/hci_packet_parser.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/hci/packet_fragmenter.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/main/bte_init.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/main/bte_main.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/a2dp/a2d_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/a2dp/a2d_sbc.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/avct/avct_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/avct/avct_ccb.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/avct/avct_l2c.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/avct/avct_lcb.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/avct/avct_lcb_act.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/avdt/avdt_ad.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/avdt/avdt_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/avdt/avdt_ccb.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/avdt/avdt_ccb_act.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/avdt/avdt_l2c.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/avdt/avdt_msg.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/avdt/avdt_scb.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/avdt/avdt_scb_act.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/avrc/avrc_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/avrc/avrc_bld_ct.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/avrc/avrc_bld_tg.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/avrc/avrc_opt.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/avrc/avrc_pars_ct.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/avrc/avrc_pars_tg.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/avrc/avrc_sdp.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/avrc/avrc_utils.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/hid/hidd_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/hid/hidd_conn.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/hid/hidh_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/hid/hidh_conn.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btm/btm_acl.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btm/btm_ble.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btm/btm_ble_addr.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btm/btm_ble_adv_filter.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btm/btm_ble_batchscan.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btm/btm_ble_bgconn.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btm/btm_ble_cont_energy.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btm/btm_ble_gap.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btm/btm_ble_5_gap.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btm/btm_ble_multi_adv.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btm/btm_ble_privacy.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btm/btm_dev.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btm/btm_devctl.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btm/btm_inq.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btm/btm_bredr_pwr_ctrl.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btm/btm_main.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btm/btm_pm.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btm/btm_sco.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btm/btm_sec.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btu/btu_hcif.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btu/btu_init.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btu/btu_task.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/gap/gap_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/gap/gap_ble.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/gap/gap_conn.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/gap/gap_utils.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/gatt/att_protocol.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/gatt/gatt_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/gatt/gatt_attr.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/gatt/gatt_auth.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/gatt/gatt_cl.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/gatt/gatt_db.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/gatt/gatt_main.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/gatt/gatt_sr.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/gatt/gatt_sr_hash.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/gatt/gatt_utils.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/goep/goepc_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/goep/goepc_main.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/hcic/hciblecmds.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/hcic/hcicmds.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/l2cap/l2c_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/l2cap/l2c_ble.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/l2cap/l2c_csm.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/l2cap/l2c_fcr.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/l2cap/l2c_link.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/l2cap/l2c_main.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/l2cap/l2c_ucd.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/l2cap/l2c_utils.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/l2cap/l2cap_client.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/obex/obex_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/obex/obex_main.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/obex/obex_tl_l2cap.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/obex/obex_tl_rfcomm.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/rfcomm/port_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/rfcomm/port_rfc.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/rfcomm/port_utils.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/rfcomm/rfc_l2cap_if.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/rfcomm/rfc_mx_fsm.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/rfcomm/rfc_port_fsm.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/rfcomm/rfc_port_if.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/rfcomm/rfc_ts_frames.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/rfcomm/rfc_utils.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/sdp/sdp_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/sdp/sdp_db.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/sdp/sdp_discovery.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/sdp/sdp_main.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/sdp/sdp_server.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/sdp/sdp_utils.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/smp/aes.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/smp/p_256_curvepara.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/smp/p_256_ecc_pp.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/smp/p_256_multprecision.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/smp/smp_act.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/smp/smp_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/smp/smp_br_main.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/smp/smp_cmac.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/smp/smp_keys.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/smp/smp_l2c.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/smp/smp_main.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/smp/smp_utils.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/config/stack_config.c"
|
||||
|
||||
# TODO: Add this file in the blufi cmake file
|
||||
"${CMAKE_CURRENT_LIST_DIR}/../../common/btc/profile/esp/blufi/bluedroid_host/esp_blufi.c"
|
||||
)
|
||||
|
||||
if(CONFIG_BT_BLE_FEAT_ISO_EN)
|
||||
list(APPEND bluedroid_host_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btm/btm_ble_iso.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/iso/btc_iso_ble.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/esp_ble_iso_api.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/hci/ble_hci_iso.c"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(CONFIG_BT_BLE_FEAT_CTE_EN)
|
||||
list(APPEND bluedroid_host_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/stack/btm/btm_ble_cte.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/cte/btc_ble_cte.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/api/esp_ble_cte_api.c"
|
||||
)
|
||||
endif()
|
||||
|
||||
# TODO: Added this file in the ble mesh cmake file
|
||||
if(CONFIG_BLE_MESH)
|
||||
list(APPEND bluedroid_host_srcs "${CMAKE_CURRENT_LIST_DIR}/../../esp_ble_mesh/core/bluedroid_host/adapter.c")
|
||||
endif()
|
||||
|
||||
list(APPEND bluedroid_host_include_dirs
|
||||
${CMAKE_CURRENT_LIST_DIR}/api/include/api
|
||||
)
|
||||
|
||||
list(APPEND bluedroid_host_priv_include_dirs
|
||||
${CMAKE_CURRENT_LIST_DIR}/bta/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/bta/ar/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/bta/av/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/bta/dm/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/bta/gatt/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/bta/hf_ag/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/bta/hf_client/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/bta/hd/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/bta/hh/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/bta/jv/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/bta/pba/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/bta/sdp/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/bta/sys/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/device/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/hci/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/btc/profile/esp/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/a2dp/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/btc/profile/std/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/btc/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/stack/btm/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/stack/gap/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/stack/gatt/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/stack/hid/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/stack/l2cap/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/stack/sdp/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/stack/smp/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/stack/avct/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/stack/avrc/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/stack/avdt/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/stack/a2dp/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/stack/rfcomm/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/stack/obex/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/stack/goep/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/stack/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/common/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/config/include
|
||||
)
|
||||
|
||||
if((CONFIG_BT_A2DP_ENABLE AND NOT CONFIG_BT_A2DP_USE_EXTERNAL_CODEC) OR
|
||||
(CONFIG_BT_HFP_ENABLE AND CONFIG_BT_HFP_AUDIO_DATA_PATH_HCI AND NOT CONFIG_BT_HFP_USE_EXTERNAL_CODEC))
|
||||
list(APPEND bluedroid_host_priv_include_dirs
|
||||
${CMAKE_CURRENT_LIST_DIR}/external/sbc/decoder/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/external/sbc/encoder/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/external/sbc/plc/include
|
||||
)
|
||||
|
||||
list(APPEND bluedroid_host_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/external/sbc/decoder/srce/alloc.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/external/sbc/decoder/srce/bitalloc-sbc.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/external/sbc/decoder/srce/bitalloc.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/external/sbc/decoder/srce/bitstream-decode.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/external/sbc/decoder/srce/decoder-oina.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/external/sbc/decoder/srce/decoder-private.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/external/sbc/decoder/srce/decoder-sbc.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/external/sbc/decoder/srce/dequant.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/external/sbc/decoder/srce/framing-sbc.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/external/sbc/decoder/srce/framing.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/external/sbc/decoder/srce/oi_codec_version.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/external/sbc/decoder/srce/synthesis-8-generated.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/external/sbc/decoder/srce/synthesis-dct8.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/external/sbc/decoder/srce/synthesis-sbc.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/external/sbc/encoder/srce/sbc_analysis.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/external/sbc/encoder/srce/sbc_dct.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/external/sbc/encoder/srce/sbc_dct_coeffs.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/external/sbc/encoder/srce/sbc_enc_bit_alloc_mono.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/external/sbc/encoder/srce/sbc_enc_bit_alloc_ste.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/external/sbc/encoder/srce/sbc_enc_coeffs.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/external/sbc/encoder/srce/sbc_encoder.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/external/sbc/encoder/srce/sbc_packing.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/external/sbc/plc/sbc_plc.c")
|
||||
endif()
|
||||
|
||||
# Export the variables to the parent scope
|
||||
set(bluedroid_host_srcs "${bluedroid_host_srcs}" PARENT_SCOPE)
|
||||
set(bluedroid_host_include_dirs "${bluedroid_host_include_dirs}" PARENT_SCOPE)
|
||||
set(bluedroid_host_priv_include_dirs "${bluedroid_host_priv_include_dirs}" PARENT_SCOPE)
|
||||
282
components/bt/host/nimble/CMakeLists.txt
Normal file
282
components/bt/host/nimble/CMakeLists.txt
Normal file
@@ -0,0 +1,282 @@
|
||||
function(set_nimble_host_compile_flags)
|
||||
if(NOT CONFIG_BT_NIMBLE_ENABLED)
|
||||
return()
|
||||
endif()
|
||||
|
||||
# TODO: These warnings should be resolved in the NimBLE code
|
||||
if(CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_DISABLE)
|
||||
# some variables in NimBLE are only used by asserts
|
||||
target_compile_options(${COMPONENT_LIB} PRIVATE -Wno-unused-but-set-variable -Wno-unused-variable)
|
||||
endif()
|
||||
|
||||
if(CMAKE_C_COMPILER_ID MATCHES "GNU" AND CMAKE_C_COMPILER_VERSION VERSION_GREATER 15.0)
|
||||
if(CONFIG_BT_NIMBLE_MESH)
|
||||
set_source_files_properties("${CMAKE_CURRENT_FUNCTION_LIST_DIR}/nimble/nimble/host/mesh/src/prov.c"
|
||||
PROPERTIES COMPILE_FLAGS "-Wno-unterminated-string-initialization")
|
||||
endif()
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
set(nimble_host_srcs "" PARENT_SCOPE)
|
||||
set(nimble_host_include_dirs "" PARENT_SCOPE)
|
||||
|
||||
# API headers that are used in the docs are also compiled
|
||||
# even if CONFIG_BT_ENABLED=n as long as CONFIG_IDF_DOC_BUILD=y
|
||||
if(CONFIG_IDF_DOC_BUILD)
|
||||
set(nimble_host_include_dirs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/esp-hci/include"
|
||||
PARENT_SCOPE
|
||||
)
|
||||
return()
|
||||
endif()
|
||||
|
||||
if(NOT CONFIG_BT_NIMBLE_ENABLED)
|
||||
return()
|
||||
endif()
|
||||
|
||||
list(APPEND nimble_host_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/transport/src/transport.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/util/src/addr.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/gatt/src/ble_svc_gatt.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/tps/src/ble_svc_tps.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/ias/src/ble_svc_ias.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/ipss/src/ble_svc_ipss.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/ans/src/ble_svc_ans.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/hr/src/ble_svc_hr.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/htp/src/ble_svc_htp.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/gap/src/ble_svc_gap.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/bas/src/ble_svc_bas.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/dis/src/ble_svc_dis.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/lls/src/ble_svc_lls.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/prox/src/ble_svc_prox.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/cts/src/ble_svc_cts.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/hid/src/ble_svc_hid.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/sps/src/ble_svc_sps.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/cte/src/ble_svc_cte.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/ras/src/ble_svc_ras.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_cs.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_hs_conn.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_store_util.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_sm.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_hs_shutdown.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_l2cap_sig_cmd.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_hs_hci_cmd.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_hs_id.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_att_svr.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_gatts_lcl.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_ibeacon.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_hs_atomic.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_sm_alg.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_hs_stop.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_hs.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_hs_hci_evt.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_hs_mqueue.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_hs_periodic_sync.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_att.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_ead.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_aes_ccm.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_gattc.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_store.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_sm_lgcy.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_hs_cfg.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_att_clt.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_l2cap_coc.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_hs_mbuf.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_att_cmd.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_hs_log.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_eddystone.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_hs_startup.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_l2cap_sig.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_gap.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_sm_cmd.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_uuid.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_hs_pvcy.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_hs_flow.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_l2cap.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_sm_sc.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_hs_misc.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_gatts.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_hs_adv.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_hs_hci.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_hs_hci_util.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_hs_resolv.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/store/ram/src/ble_store_ram.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/store/config/src/ble_store_config.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/store/config/src/ble_store_nvs.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_gattc_cache.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_gattc_cache_conn.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_eatt.c"
|
||||
# NimBLE Porting
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/porting/nimble/src/nimble_port.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/port/src/nvs_port.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/port/src/esp_nimble_mem.c"
|
||||
# TODO: Add this file in the blufi cmake file
|
||||
"${CMAKE_CURRENT_LIST_DIR}/../../common/btc/profile/esp/blufi/nimble_host/esp_blufi.c"
|
||||
)
|
||||
|
||||
# TODO: Added this file in the ble mesh cmake file
|
||||
if(CONFIG_BLE_MESH)
|
||||
list(APPEND nimble_host_srcs "${CMAKE_CURRENT_LIST_DIR}/../../esp_ble_mesh/core/nimble_host/adapter.c")
|
||||
endif()
|
||||
|
||||
if(CONFIG_BT_NIMBLE_ISO)
|
||||
list(APPEND nimble_host_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_hs_iso_hci.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/src/ble_hs_iso.c"
|
||||
)
|
||||
endif()
|
||||
|
||||
# Nimble porting layer for FreeRTOS
|
||||
if(CONFIG_BT_DUAL_MODE_ARCH)
|
||||
list(APPEND nimble_host_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/porting/npl/esp-idf/src/nimble_port_freertos.c"
|
||||
)
|
||||
list(APPEND nimble_host_include_dirs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/porting/npl/esp-idf/include"
|
||||
)
|
||||
else()
|
||||
list(APPEND nimble_host_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/porting/npl/freertos/src/nimble_port_freertos.c"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(CONFIG_BT_CONTROLLER_DISABLED)
|
||||
# UART HCI driver for host only mode
|
||||
if(CONFIG_BT_NIMBLE_TRANSPORT_UART)
|
||||
list(APPEND nimble_host_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/transport/uart_ll/src/hci_uart.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/transport/common/hci_h4/src/hci_h4.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/porting/nimble/src/hal_uart.c"
|
||||
)
|
||||
endif()
|
||||
else()
|
||||
# Inter-Process Communication (VHCI)
|
||||
if(CONFIG_BT_NIMBLE_LEGACY_VHCI_ENABLE)
|
||||
list(APPEND nimble_host_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/esp-hci/src/esp_nimble_hci.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/transport/esp_ipc_legacy/src/hci_esp_ipc_legacy.c"
|
||||
)
|
||||
list(APPEND nimble_host_include_dirs
|
||||
${CMAKE_CURRENT_LIST_DIR}/esp-hci/include
|
||||
)
|
||||
elseif(CONFIG_BT_DUAL_MODE_ARCH)
|
||||
list(APPEND nimble_host_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/transport/esp_ipc_btdm/src/hci_esp_ipc.c"
|
||||
)
|
||||
else()
|
||||
list(APPEND nimble_host_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/transport/esp_ipc/src/hci_esp_ipc.c"
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Reuse the code from the controller to reduce flash usage
|
||||
if(CONFIG_BT_CONTROLLER_DISABLED OR NOT CONFIG_SOC_ESP_NIMBLE_CONTROLLER)
|
||||
list(APPEND nimble_host_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/porting/nimble/src/endian.c"
|
||||
#TODO: Split this into a separate file for the controller and the host
|
||||
"${CMAKE_CURRENT_LIST_DIR}/../../porting/mem/os_mempool.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/porting/nimble/src/mem.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/porting/nimble/src/os_mbuf.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/porting/nimble/src/os_msys_init.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/porting/npl/freertos/src/npl_os_freertos.c"
|
||||
)
|
||||
endif()
|
||||
|
||||
list(APPEND nimble_host_include_dirs
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/ans/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/bas/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/dis/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/gap/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/gatt/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/hr/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/htp/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/ias/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/ipss/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/lls/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/prox/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/cts/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/tps/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/hid/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/sps/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/cte/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/util/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/store/ram/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/store/config/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/services/ras/include
|
||||
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/porting/nimble/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/port/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/transport/include
|
||||
)
|
||||
|
||||
if(CONFIG_BT_CONTROLLER_DISABLED)
|
||||
list(APPEND nimble_host_include_dirs
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/transport/common/hci_h4/include
|
||||
)
|
||||
endif()
|
||||
|
||||
if(CONFIG_BT_CONTROLLER_DISABLED OR NOT CONFIG_SOC_ESP_NIMBLE_CONTROLLER)
|
||||
list(APPEND nimble_host_include_dirs
|
||||
${CMAKE_CURRENT_LIST_DIR}/../../porting/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/porting/npl/freertos/include
|
||||
)
|
||||
endif()
|
||||
|
||||
# BLE NIMBLE MESH (Deprecated)
|
||||
if(CONFIG_BT_NIMBLE_MESH)
|
||||
list(APPEND nimble_host_srcs
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/shell.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/friend.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/crypto.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/settings.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/adv.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/adv_ext.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/adv_legacy.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/model_srv.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/msg.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/beacon.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/glue.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/model_cli.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/transport.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/prov.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/mesh.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/access.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/cfg_srv.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/cfg_cli.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/light_model.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/health_cli.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/lpn.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/health_srv.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/testing.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/aes-ccm.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/app_keys.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/cdb.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/cfg.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/pb_adv.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/pb_gatt.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/pb_gatt_srv.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/prov_device.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/provisioner.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/heartbeat.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/rpl.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/subnet.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/proxy_msg.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/proxy_srv.c"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/net.c"
|
||||
)
|
||||
|
||||
list(APPEND nimble_host_include_dirs
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/include
|
||||
${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/include/host
|
||||
)
|
||||
|
||||
set_source_files_properties("${CMAKE_CURRENT_LIST_DIR}/nimble/nimble/host/mesh/src/net.c"
|
||||
PROPERTIES COMPILE_FLAGS -Wno-type-limits)
|
||||
endif()
|
||||
|
||||
# Export the variables to the parent scope
|
||||
set(nimble_host_srcs "${nimble_host_srcs}" PARENT_SCOPE)
|
||||
set(nimble_host_include_dirs "${nimble_host_include_dirs}" PARENT_SCOPE)
|
||||
58
components/bt/porting/CMakeLists.txt
Normal file
58
components/bt/porting/CMakeLists.txt
Normal file
@@ -0,0 +1,58 @@
|
||||
set(porting_srcs "" PARENT_SCOPE)
|
||||
set(porting_include_dirs "" PARENT_SCOPE)
|
||||
set(porting_priv_include_dirs "" PARENT_SCOPE)
|
||||
|
||||
if(NOT CONFIG_BT_CONTROLLER_ENABLED)
|
||||
return()
|
||||
endif()
|
||||
|
||||
list(APPEND porting_priv_include_dirs
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/mem/
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/include
|
||||
)
|
||||
|
||||
list(APPEND porting_srcs
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/mem/bt_osi_mem.c"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/mem/os_msys_init.c"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/mem/os_mempool.c"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/npl/freertos/src/npl_os_freertos.c"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/transport/src/hci_transport.c"
|
||||
)
|
||||
|
||||
if(CONFIG_BT_LE_HCI_INTERFACE_USE_RAM)
|
||||
if(CONFIG_BT_NIMBLE_ENABLED)
|
||||
list(APPEND porting_srcs
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/transport/driver/vhci/hci_driver_nimble.c"
|
||||
)
|
||||
else()
|
||||
list(APPEND porting_srcs
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/transport/driver/vhci/hci_driver_standard.c"
|
||||
)
|
||||
endif()
|
||||
elseif(CONFIG_BT_LE_HCI_INTERFACE_USE_UART)
|
||||
list(APPEND porting_srcs
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/transport/driver/common/hci_driver_util.c"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/transport/driver/common/hci_driver_h4.c"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/transport/driver/common/hci_driver_mem.c"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/transport/driver/uart/hci_driver_uart_config.c"
|
||||
)
|
||||
if(CONFIG_BT_LE_UART_HCI_DMA_MODE)
|
||||
list(APPEND porting_srcs
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/transport/driver/uart/hci_driver_uart_dma.c"
|
||||
)
|
||||
else()
|
||||
list(APPEND porting_srcs
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/transport/driver/uart/hci_driver_uart.c"
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
list(APPEND porting_include_dirs
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/include"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/npl/freertos/include"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/transport/include"
|
||||
)
|
||||
|
||||
set(porting_srcs ${porting_srcs} PARENT_SCOPE)
|
||||
set(porting_include_dirs ${porting_include_dirs} PARENT_SCOPE)
|
||||
set(porting_priv_include_dirs ${porting_priv_include_dirs} PARENT_SCOPE)
|
||||
@@ -1,56 +1,62 @@
|
||||
set(porting_btdm_srcs "")
|
||||
set(porting_btdm_include_dirs "")
|
||||
set(porting_srcs "" PARENT_SCOPE)
|
||||
set(porting_include_dirs "" PARENT_SCOPE)
|
||||
set(porting_priv_include_dirs "" PARENT_SCOPE)
|
||||
|
||||
if(NOT CONFIG_BT_CONTROLLER_ENABLED)
|
||||
return()
|
||||
endif()
|
||||
|
||||
# btdm_common
|
||||
file(GLOB_RECURSE BTDM_COMMON_SRCS "controller/btdm_common/src/*.c")
|
||||
list(APPEND porting_btdm_srcs ${BTDM_COMMON_SRCS})
|
||||
list(APPEND porting_btdm_include_dirs "${CMAKE_CURRENT_SOURCE_DIR}/controller/btdm_common/include")
|
||||
list(APPEND porting_srcs ${BTDM_COMMON_SRCS})
|
||||
list(APPEND porting_include_dirs "${CMAKE_CURRENT_SOURCE_DIR}/controller/btdm_common/include")
|
||||
|
||||
# ble
|
||||
if(CONFIG_BT_CTRL_BLE_ENABLE)
|
||||
list(APPEND porting_btdm_include_dirs "${CMAKE_CURRENT_SOURCE_DIR}/controller/ble/include")
|
||||
list(APPEND porting_include_dirs "${CMAKE_CURRENT_SOURCE_DIR}/controller/ble/include")
|
||||
file(GLOB_RECURSE BLE_SRCS "controller/ble/src/*.c")
|
||||
list(APPEND porting_btdm_srcs ${BLE_SRCS})
|
||||
list(APPEND porting_srcs ${BLE_SRCS})
|
||||
endif()
|
||||
|
||||
# bredr
|
||||
if(CONFIG_BT_CTRL_BREDR_ENABLE)
|
||||
list(APPEND porting_btdm_include_dirs "${CMAKE_CURRENT_SOURCE_DIR}/controller/bredr/include")
|
||||
list(APPEND porting_include_dirs "${CMAKE_CURRENT_SOURCE_DIR}/controller/bredr/include")
|
||||
file(GLOB_RECURSE BREDR_SRCS "controller/bredr/src/*.c")
|
||||
list(APPEND porting_btdm_srcs ${BREDR_SRCS})
|
||||
list(APPEND porting_srcs ${BREDR_SRCS})
|
||||
endif()
|
||||
|
||||
# transport
|
||||
file(GLOB_RECURSE TRANSPORT_SRCS "transport/src/*.c")
|
||||
list(APPEND porting_btdm_srcs ${TRANSPORT_SRCS})
|
||||
list(APPEND porting_btdm_include_dirs "${CMAKE_CURRENT_SOURCE_DIR}/transport/include")
|
||||
list(APPEND porting_srcs ${TRANSPORT_SRCS})
|
||||
list(APPEND porting_include_dirs "${CMAKE_CURRENT_SOURCE_DIR}/transport/include")
|
||||
if(CONFIG_BT_CTRL_HCI_INTERFACE_USE_RAM)
|
||||
if(CONFIG_BT_NIMBLE_ENABLED)
|
||||
list(APPEND porting_btdm_srcs
|
||||
list(APPEND porting_srcs
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/transport/driver/vhci/hci_driver_nimble.c"
|
||||
)
|
||||
else()
|
||||
list(APPEND porting_btdm_srcs
|
||||
list(APPEND porting_srcs
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/transport/driver/vhci/hci_driver_standard.c"
|
||||
)
|
||||
endif()
|
||||
elseif(CONFIG_BT_CTRL_HCI_INTERFACE_USE_UART)
|
||||
list(APPEND porting_btdm_srcs
|
||||
list(APPEND porting_srcs
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/transport/driver/common/hci_driver_util.c"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/transport/driver/common/hci_driver_h4.c"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/transport/driver/common/hci_driver_mem.c"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/transport/driver/uart/hci_driver_uart_config.c"
|
||||
)
|
||||
if(CONFIG_BT_CTRL_UART_HCI_NO_DMA_MODE)
|
||||
list(APPEND porting_btdm_srcs
|
||||
list(APPEND porting_srcs
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/transport/driver/uart/hci_driver_uart.c"
|
||||
)
|
||||
else()
|
||||
list(APPEND porting_btdm_srcs
|
||||
list(APPEND porting_srcs
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/transport/driver/uart/hci_driver_uart_dma.c"
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
set(porting_btdm_srcs ${porting_btdm_srcs} PARENT_SCOPE)
|
||||
set(porting_btdm_include_dirs ${porting_btdm_include_dirs} PARENT_SCOPE)
|
||||
set(porting_srcs ${porting_srcs} PARENT_SCOPE)
|
||||
set(porting_include_dirs ${porting_include_dirs} PARENT_SCOPE)
|
||||
set(porting_priv_include_dirs ${porting_priv_include_dirs} PARENT_SCOPE)
|
||||
|
||||
Reference in New Issue
Block a user