CMakeLists.txt 33 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578
  1. if(CONFIG_BT_ENABLED)
  2. set(srcs "controller/bt.c")
  3. set(include_dirs include
  4. common/osi/include)
  5. list(APPEND priv_include_dirs
  6. common/btc/include
  7. common/include)
  8. list(APPEND srcs "common/btc/core/btc_alarm.c"
  9. "common/btc/core/btc_manage.c"
  10. "common/btc/core/btc_task.c"
  11. "common/osi/alarm.c"
  12. "common/osi/allocator.c"
  13. "common/osi/buffer.c"
  14. "common/osi/config.c"
  15. "common/osi/fixed_queue.c"
  16. "common/osi/future.c"
  17. "common/osi/hash_functions.c"
  18. "common/osi/hash_map.c"
  19. "common/osi/list.c"
  20. "common/osi/mutex.c"
  21. "common/osi/thread.c"
  22. "common/osi/osi.c"
  23. "common/osi/semaphore.c")
  24. if(CONFIG_BT_BLUEDROID_ENABLED)
  25. list(APPEND priv_include_dirs
  26. host/bluedroid/bta/include
  27. host/bluedroid/bta/ar/include
  28. host/bluedroid/bta/av/include
  29. host/bluedroid/bta/dm/include
  30. host/bluedroid/bta/gatt/include
  31. host/bluedroid/bta/hf_ag/include
  32. host/bluedroid/bta/hf_client/include
  33. host/bluedroid/bta/hh/include
  34. host/bluedroid/bta/jv/include
  35. host/bluedroid/bta/sdp/include
  36. host/bluedroid/bta/sys/include
  37. host/bluedroid/device/include
  38. host/bluedroid/hci/include
  39. host/bluedroid/external/sbc/decoder/include
  40. host/bluedroid/external/sbc/encoder/include
  41. host/bluedroid/external/sbc/plc/include
  42. host/bluedroid/btc/profile/esp/blufi/include
  43. host/bluedroid/btc/profile/esp/include
  44. host/bluedroid/btc/profile/std/a2dp/include
  45. host/bluedroid/btc/profile/std/hid/include
  46. host/bluedroid/btc/profile/std/include
  47. host/bluedroid/btc/include
  48. host/bluedroid/stack/btm/include
  49. host/bluedroid/stack/gap/include
  50. host/bluedroid/stack/gatt/include
  51. host/bluedroid/stack/l2cap/include
  52. host/bluedroid/stack/sdp/include
  53. host/bluedroid/stack/smp/include
  54. host/bluedroid/stack/avct/include
  55. host/bluedroid/stack/avrc/include
  56. host/bluedroid/stack/avdt/include
  57. host/bluedroid/stack/a2dp/include
  58. host/bluedroid/stack/rfcomm/include
  59. host/bluedroid/stack/include
  60. host/bluedroid/common/include)
  61. list(APPEND include_dirs host/bluedroid/api/include/api)
  62. list(APPEND srcs "host/bluedroid/api/esp_a2dp_api.c"
  63. "host/bluedroid/api/esp_avrc_api.c"
  64. "host/bluedroid/api/esp_blufi_api.c"
  65. "host/bluedroid/api/esp_bt_device.c"
  66. "host/bluedroid/api/esp_bt_main.c"
  67. "host/bluedroid/api/esp_gap_ble_api.c"
  68. "host/bluedroid/api/esp_gap_bt_api.c"
  69. "host/bluedroid/api/esp_gatt_common_api.c"
  70. "host/bluedroid/api/esp_gattc_api.c"
  71. "host/bluedroid/api/esp_gatts_api.c"
  72. "host/bluedroid/api/esp_hf_ag_api.c"
  73. "host/bluedroid/api/esp_hf_client_api.c"
  74. "host/bluedroid/api/esp_spp_api.c"
  75. "host/bluedroid/bta/ar/bta_ar.c"
  76. "host/bluedroid/bta/av/bta_av_aact.c"
  77. "host/bluedroid/bta/av/bta_av_act.c"
  78. "host/bluedroid/bta/av/bta_av_api.c"
  79. "host/bluedroid/bta/av/bta_av_cfg.c"
  80. "host/bluedroid/bta/av/bta_av_ci.c"
  81. "host/bluedroid/bta/av/bta_av_main.c"
  82. "host/bluedroid/bta/av/bta_av_sbc.c"
  83. "host/bluedroid/bta/av/bta_av_ssm.c"
  84. "host/bluedroid/bta/dm/bta_dm_act.c"
  85. "host/bluedroid/bta/dm/bta_dm_api.c"
  86. "host/bluedroid/bta/dm/bta_dm_cfg.c"
  87. "host/bluedroid/bta/dm/bta_dm_ci.c"
  88. "host/bluedroid/bta/dm/bta_dm_co.c"
  89. "host/bluedroid/bta/dm/bta_dm_main.c"
  90. "host/bluedroid/bta/dm/bta_dm_pm.c"
  91. "host/bluedroid/bta/dm/bta_dm_sco.c"
  92. "host/bluedroid/bta/dm/bta_dm_qos.c"
  93. "host/bluedroid/bta/gatt/bta_gatt_common.c"
  94. "host/bluedroid/bta/gatt/bta_gattc_act.c"
  95. "host/bluedroid/bta/gatt/bta_gattc_api.c"
  96. "host/bluedroid/bta/gatt/bta_gattc_cache.c"
  97. "host/bluedroid/bta/gatt/bta_gattc_ci.c"
  98. "host/bluedroid/bta/gatt/bta_gattc_co.c"
  99. "host/bluedroid/bta/gatt/bta_gattc_main.c"
  100. "host/bluedroid/bta/gatt/bta_gattc_utils.c"
  101. "host/bluedroid/bta/gatt/bta_gatts_act.c"
  102. "host/bluedroid/bta/gatt/bta_gatts_api.c"
  103. "host/bluedroid/bta/gatt/bta_gatts_co.c"
  104. "host/bluedroid/bta/gatt/bta_gatts_main.c"
  105. "host/bluedroid/bta/gatt/bta_gatts_utils.c"
  106. "host/bluedroid/bta/hh/bta_hh_act.c"
  107. "host/bluedroid/bta/hh/bta_hh_api.c"
  108. "host/bluedroid/bta/hh/bta_hh_cfg.c"
  109. "host/bluedroid/bta/hh/bta_hh_le.c"
  110. "host/bluedroid/bta/hh/bta_hh_main.c"
  111. "host/bluedroid/bta/hh/bta_hh_utils.c"
  112. "host/bluedroid/bta/jv/bta_jv_act.c"
  113. "host/bluedroid/bta/jv/bta_jv_api.c"
  114. "host/bluedroid/bta/jv/bta_jv_cfg.c"
  115. "host/bluedroid/bta/jv/bta_jv_main.c"
  116. "host/bluedroid/bta/hf_ag/bta_ag_act.c"
  117. "host/bluedroid/bta/hf_ag/bta_ag_api.c"
  118. "host/bluedroid/bta/hf_ag/bta_ag_at.c"
  119. "host/bluedroid/bta/hf_ag/bta_ag_cfg.c"
  120. "host/bluedroid/bta/hf_ag/bta_ag_cmd.c"
  121. "host/bluedroid/bta/hf_ag/bta_ag_main.c"
  122. "host/bluedroid/bta/hf_ag/bta_ag_rfc.c"
  123. "host/bluedroid/bta/hf_ag/bta_ag_sco.c"
  124. "host/bluedroid/bta/hf_ag/bta_ag_sdp.c"
  125. "host/bluedroid/bta/hf_client/bta_hf_client_act.c"
  126. "host/bluedroid/bta/hf_client/bta_hf_client_api.c"
  127. "host/bluedroid/bta/hf_client/bta_hf_client_at.c"
  128. "host/bluedroid/bta/hf_client/bta_hf_client_cmd.c"
  129. "host/bluedroid/bta/hf_client/bta_hf_client_main.c"
  130. "host/bluedroid/bta/hf_client/bta_hf_client_rfc.c"
  131. "host/bluedroid/bta/hf_client/bta_hf_client_sco.c"
  132. "host/bluedroid/bta/hf_client/bta_hf_client_sdp.c"
  133. "host/bluedroid/bta/sdp/bta_sdp.c"
  134. "host/bluedroid/bta/sdp/bta_sdp_act.c"
  135. "host/bluedroid/bta/sdp/bta_sdp_api.c"
  136. "host/bluedroid/bta/sdp/bta_sdp_cfg.c"
  137. "host/bluedroid/bta/sys/bta_sys_conn.c"
  138. "host/bluedroid/bta/sys/bta_sys_main.c"
  139. "host/bluedroid/bta/sys/utl.c"
  140. "host/bluedroid/btc/core/btc_ble_storage.c"
  141. "host/bluedroid/btc/core/btc_config.c"
  142. "host/bluedroid/btc/core/btc_dev.c"
  143. "host/bluedroid/btc/core/btc_dm.c"
  144. "host/bluedroid/btc/core/btc_main.c"
  145. "host/bluedroid/btc/core/btc_profile_queue.c"
  146. "host/bluedroid/btc/core/btc_sec.c"
  147. "host/bluedroid/btc/core/btc_sm.c"
  148. "host/bluedroid/btc/core/btc_storage.c"
  149. "host/bluedroid/btc/core/btc_util.c"
  150. "host/bluedroid/btc/profile/esp/blufi/blufi_prf.c"
  151. "host/bluedroid/btc/profile/esp/blufi/blufi_protocol.c"
  152. "host/bluedroid/btc/profile/std/a2dp/bta_av_co.c"
  153. "host/bluedroid/btc/profile/std/a2dp/btc_a2dp.c"
  154. "host/bluedroid/btc/profile/std/a2dp/btc_a2dp_control.c"
  155. "host/bluedroid/btc/profile/std/a2dp/btc_a2dp_sink.c"
  156. "host/bluedroid/btc/profile/std/a2dp/btc_a2dp_source.c"
  157. "host/bluedroid/btc/profile/std/a2dp/btc_av.c"
  158. "host/bluedroid/btc/profile/std/avrc/btc_avrc.c"
  159. "host/bluedroid/btc/profile/std/avrc/bta_avrc_co.c"
  160. "host/bluedroid/btc/profile/std/hf_ag/bta_ag_co.c"
  161. "host/bluedroid/btc/profile/std/hf_ag/btc_hf_ag.c"
  162. "host/bluedroid/btc/profile/std/hf_client/btc_hf_client.c"
  163. "host/bluedroid/btc/profile/std/hf_client/bta_hf_client_co.c"
  164. "host/bluedroid/btc/profile/std/hid/hidh_api.c"
  165. "host/bluedroid/btc/profile/std/hid/hidh_conn.c"
  166. "host/bluedroid/btc/profile/std/gap/btc_gap_ble.c"
  167. "host/bluedroid/btc/profile/std/gap/btc_gap_bt.c"
  168. "host/bluedroid/btc/profile/std/gap/bta_gap_bt_co.c"
  169. "host/bluedroid/btc/profile/std/gatt/btc_gatt_common.c"
  170. "host/bluedroid/btc/profile/std/gatt/btc_gatt_util.c"
  171. "host/bluedroid/btc/profile/std/gatt/btc_gattc.c"
  172. "host/bluedroid/btc/profile/std/gatt/btc_gatts.c"
  173. "host/bluedroid/btc/profile/std/spp/btc_spp.c"
  174. "host/bluedroid/device/bdaddr.c"
  175. "host/bluedroid/device/controller.c"
  176. "host/bluedroid/device/interop.c"
  177. "host/bluedroid/external/sbc/decoder/srce/alloc.c"
  178. "host/bluedroid/external/sbc/decoder/srce/bitalloc-sbc.c"
  179. "host/bluedroid/external/sbc/decoder/srce/bitalloc.c"
  180. "host/bluedroid/external/sbc/decoder/srce/bitstream-decode.c"
  181. "host/bluedroid/external/sbc/decoder/srce/decoder-oina.c"
  182. "host/bluedroid/external/sbc/decoder/srce/decoder-private.c"
  183. "host/bluedroid/external/sbc/decoder/srce/decoder-sbc.c"
  184. "host/bluedroid/external/sbc/decoder/srce/dequant.c"
  185. "host/bluedroid/external/sbc/decoder/srce/framing-sbc.c"
  186. "host/bluedroid/external/sbc/decoder/srce/framing.c"
  187. "host/bluedroid/external/sbc/decoder/srce/oi_codec_version.c"
  188. "host/bluedroid/external/sbc/decoder/srce/synthesis-8-generated.c"
  189. "host/bluedroid/external/sbc/decoder/srce/synthesis-dct8.c"
  190. "host/bluedroid/external/sbc/decoder/srce/synthesis-sbc.c"
  191. "host/bluedroid/external/sbc/encoder/srce/sbc_analysis.c"
  192. "host/bluedroid/external/sbc/encoder/srce/sbc_dct.c"
  193. "host/bluedroid/external/sbc/encoder/srce/sbc_dct_coeffs.c"
  194. "host/bluedroid/external/sbc/encoder/srce/sbc_enc_bit_alloc_mono.c"
  195. "host/bluedroid/external/sbc/encoder/srce/sbc_enc_bit_alloc_ste.c"
  196. "host/bluedroid/external/sbc/encoder/srce/sbc_enc_coeffs.c"
  197. "host/bluedroid/external/sbc/encoder/srce/sbc_encoder.c"
  198. "host/bluedroid/external/sbc/encoder/srce/sbc_packing.c"
  199. "host/bluedroid/external/sbc/plc/sbc_plc.c"
  200. "host/bluedroid/hci/hci_audio.c"
  201. "host/bluedroid/hci/hci_hal_h4.c"
  202. "host/bluedroid/hci/hci_layer.c"
  203. "host/bluedroid/hci/hci_packet_factory.c"
  204. "host/bluedroid/hci/hci_packet_parser.c"
  205. "host/bluedroid/hci/packet_fragmenter.c"
  206. "host/bluedroid/main/bte_init.c"
  207. "host/bluedroid/main/bte_main.c"
  208. "host/bluedroid/stack/a2dp/a2d_api.c"
  209. "host/bluedroid/stack/a2dp/a2d_sbc.c"
  210. "host/bluedroid/stack/avct/avct_api.c"
  211. "host/bluedroid/stack/avct/avct_ccb.c"
  212. "host/bluedroid/stack/avct/avct_l2c.c"
  213. "host/bluedroid/stack/avct/avct_lcb.c"
  214. "host/bluedroid/stack/avct/avct_lcb_act.c"
  215. "host/bluedroid/stack/avdt/avdt_ad.c"
  216. "host/bluedroid/stack/avdt/avdt_api.c"
  217. "host/bluedroid/stack/avdt/avdt_ccb.c"
  218. "host/bluedroid/stack/avdt/avdt_ccb_act.c"
  219. "host/bluedroid/stack/avdt/avdt_l2c.c"
  220. "host/bluedroid/stack/avdt/avdt_msg.c"
  221. "host/bluedroid/stack/avdt/avdt_scb.c"
  222. "host/bluedroid/stack/avdt/avdt_scb_act.c"
  223. "host/bluedroid/stack/avrc/avrc_api.c"
  224. "host/bluedroid/stack/avrc/avrc_bld_ct.c"
  225. "host/bluedroid/stack/avrc/avrc_bld_tg.c"
  226. "host/bluedroid/stack/avrc/avrc_opt.c"
  227. "host/bluedroid/stack/avrc/avrc_pars_ct.c"
  228. "host/bluedroid/stack/avrc/avrc_pars_tg.c"
  229. "host/bluedroid/stack/avrc/avrc_sdp.c"
  230. "host/bluedroid/stack/avrc/avrc_utils.c"
  231. "host/bluedroid/stack/btm/btm_acl.c"
  232. "host/bluedroid/stack/btm/btm_ble.c"
  233. "host/bluedroid/stack/btm/btm_ble_addr.c"
  234. "host/bluedroid/stack/btm/btm_ble_adv_filter.c"
  235. "host/bluedroid/stack/btm/btm_ble_batchscan.c"
  236. "host/bluedroid/stack/btm/btm_ble_bgconn.c"
  237. "host/bluedroid/stack/btm/btm_ble_cont_energy.c"
  238. "host/bluedroid/stack/btm/btm_ble_gap.c"
  239. "host/bluedroid/stack/btm/btm_ble_multi_adv.c"
  240. "host/bluedroid/stack/btm/btm_ble_privacy.c"
  241. "host/bluedroid/stack/btm/btm_dev.c"
  242. "host/bluedroid/stack/btm/btm_devctl.c"
  243. "host/bluedroid/stack/btm/btm_inq.c"
  244. "host/bluedroid/stack/btm/btm_main.c"
  245. "host/bluedroid/stack/btm/btm_pm.c"
  246. "host/bluedroid/stack/btm/btm_sco.c"
  247. "host/bluedroid/stack/btm/btm_sec.c"
  248. "host/bluedroid/stack/btu/btu_hcif.c"
  249. "host/bluedroid/stack/btu/btu_init.c"
  250. "host/bluedroid/stack/btu/btu_task.c"
  251. "host/bluedroid/stack/gap/gap_api.c"
  252. "host/bluedroid/stack/gap/gap_ble.c"
  253. "host/bluedroid/stack/gap/gap_conn.c"
  254. "host/bluedroid/stack/gap/gap_utils.c"
  255. "host/bluedroid/stack/gatt/att_protocol.c"
  256. "host/bluedroid/stack/gatt/gatt_api.c"
  257. "host/bluedroid/stack/gatt/gatt_attr.c"
  258. "host/bluedroid/stack/gatt/gatt_auth.c"
  259. "host/bluedroid/stack/gatt/gatt_cl.c"
  260. "host/bluedroid/stack/gatt/gatt_db.c"
  261. "host/bluedroid/stack/gatt/gatt_main.c"
  262. "host/bluedroid/stack/gatt/gatt_sr.c"
  263. "host/bluedroid/stack/gatt/gatt_utils.c"
  264. "host/bluedroid/stack/hcic/hciblecmds.c"
  265. "host/bluedroid/stack/hcic/hcicmds.c"
  266. "host/bluedroid/stack/l2cap/l2c_api.c"
  267. "host/bluedroid/stack/l2cap/l2c_ble.c"
  268. "host/bluedroid/stack/l2cap/l2c_csm.c"
  269. "host/bluedroid/stack/l2cap/l2c_fcr.c"
  270. "host/bluedroid/stack/l2cap/l2c_link.c"
  271. "host/bluedroid/stack/l2cap/l2c_main.c"
  272. "host/bluedroid/stack/l2cap/l2c_ucd.c"
  273. "host/bluedroid/stack/l2cap/l2c_utils.c"
  274. "host/bluedroid/stack/l2cap/l2cap_client.c"
  275. "host/bluedroid/stack/rfcomm/port_api.c"
  276. "host/bluedroid/stack/rfcomm/port_rfc.c"
  277. "host/bluedroid/stack/rfcomm/port_utils.c"
  278. "host/bluedroid/stack/rfcomm/rfc_l2cap_if.c"
  279. "host/bluedroid/stack/rfcomm/rfc_mx_fsm.c"
  280. "host/bluedroid/stack/rfcomm/rfc_port_fsm.c"
  281. "host/bluedroid/stack/rfcomm/rfc_port_if.c"
  282. "host/bluedroid/stack/rfcomm/rfc_ts_frames.c"
  283. "host/bluedroid/stack/rfcomm/rfc_utils.c"
  284. "host/bluedroid/stack/sdp/sdp_api.c"
  285. "host/bluedroid/stack/sdp/sdp_db.c"
  286. "host/bluedroid/stack/sdp/sdp_discovery.c"
  287. "host/bluedroid/stack/sdp/sdp_main.c"
  288. "host/bluedroid/stack/sdp/sdp_server.c"
  289. "host/bluedroid/stack/sdp/sdp_utils.c"
  290. "host/bluedroid/stack/smp/aes.c"
  291. "host/bluedroid/stack/smp/p_256_curvepara.c"
  292. "host/bluedroid/stack/smp/p_256_ecc_pp.c"
  293. "host/bluedroid/stack/smp/p_256_multprecision.c"
  294. "host/bluedroid/stack/smp/smp_act.c"
  295. "host/bluedroid/stack/smp/smp_api.c"
  296. "host/bluedroid/stack/smp/smp_br_main.c"
  297. "host/bluedroid/stack/smp/smp_cmac.c"
  298. "host/bluedroid/stack/smp/smp_keys.c"
  299. "host/bluedroid/stack/smp/smp_l2c.c"
  300. "host/bluedroid/stack/smp/smp_main.c"
  301. "host/bluedroid/stack/smp/smp_utils.c")
  302. if(CONFIG_BLE_MESH)
  303. list(APPEND srcs "esp_ble_mesh/mesh_core/bluedroid_host/mesh_bearer_adapt.c")
  304. endif()
  305. endif()
  306. if(CONFIG_BLE_MESH)
  307. list(APPEND include_dirs
  308. "esp_ble_mesh/mesh_common/include"
  309. "esp_ble_mesh/mesh_common/tinycrypt/include"
  310. "esp_ble_mesh/mesh_core"
  311. "esp_ble_mesh/mesh_core/include"
  312. "esp_ble_mesh/mesh_core/storage"
  313. "esp_ble_mesh/btc/include"
  314. "esp_ble_mesh/mesh_models/common/include"
  315. "esp_ble_mesh/mesh_models/client/include"
  316. "esp_ble_mesh/mesh_models/server/include"
  317. "esp_ble_mesh/api/core/include"
  318. "esp_ble_mesh/api/models/include"
  319. "esp_ble_mesh/api")
  320. list(APPEND srcs "esp_ble_mesh/api/core/esp_ble_mesh_ble_api.c"
  321. "esp_ble_mesh/api/core/esp_ble_mesh_common_api.c"
  322. "esp_ble_mesh/api/core/esp_ble_mesh_local_data_operation_api.c"
  323. "esp_ble_mesh/api/core/esp_ble_mesh_low_power_api.c"
  324. "esp_ble_mesh/api/core/esp_ble_mesh_networking_api.c"
  325. "esp_ble_mesh/api/core/esp_ble_mesh_provisioning_api.c"
  326. "esp_ble_mesh/api/core/esp_ble_mesh_proxy_api.c"
  327. "esp_ble_mesh/api/models/esp_ble_mesh_config_model_api.c"
  328. "esp_ble_mesh/api/models/esp_ble_mesh_generic_model_api.c"
  329. "esp_ble_mesh/api/models/esp_ble_mesh_health_model_api.c"
  330. "esp_ble_mesh/api/models/esp_ble_mesh_lighting_model_api.c"
  331. "esp_ble_mesh/api/models/esp_ble_mesh_sensor_model_api.c"
  332. "esp_ble_mesh/api/models/esp_ble_mesh_time_scene_model_api.c"
  333. "esp_ble_mesh/btc/btc_ble_mesh_ble.c"
  334. "esp_ble_mesh/btc/btc_ble_mesh_config_model.c"
  335. "esp_ble_mesh/btc/btc_ble_mesh_generic_model.c"
  336. "esp_ble_mesh/btc/btc_ble_mesh_health_model.c"
  337. "esp_ble_mesh/btc/btc_ble_mesh_lighting_model.c"
  338. "esp_ble_mesh/btc/btc_ble_mesh_prov.c"
  339. "esp_ble_mesh/btc/btc_ble_mesh_sensor_model.c"
  340. "esp_ble_mesh/btc/btc_ble_mesh_time_scene_model.c"
  341. "esp_ble_mesh/mesh_common/tinycrypt/src/aes_decrypt.c"
  342. "esp_ble_mesh/mesh_common/tinycrypt/src/aes_encrypt.c"
  343. "esp_ble_mesh/mesh_common/tinycrypt/src/cbc_mode.c"
  344. "esp_ble_mesh/mesh_common/tinycrypt/src/ccm_mode.c"
  345. "esp_ble_mesh/mesh_common/tinycrypt/src/cmac_mode.c"
  346. "esp_ble_mesh/mesh_common/tinycrypt/src/ctr_mode.c"
  347. "esp_ble_mesh/mesh_common/tinycrypt/src/ctr_prng.c"
  348. "esp_ble_mesh/mesh_common/tinycrypt/src/ecc_dh.c"
  349. "esp_ble_mesh/mesh_common/tinycrypt/src/ecc_dsa.c"
  350. "esp_ble_mesh/mesh_common/tinycrypt/src/ecc_platform_specific.c"
  351. "esp_ble_mesh/mesh_common/tinycrypt/src/ecc.c"
  352. "esp_ble_mesh/mesh_common/tinycrypt/src/hmac_prng.c"
  353. "esp_ble_mesh/mesh_common/tinycrypt/src/hmac.c"
  354. "esp_ble_mesh/mesh_common/tinycrypt/src/sha256.c"
  355. "esp_ble_mesh/mesh_common/tinycrypt/src/utils.c"
  356. "esp_ble_mesh/mesh_common/mesh_atomic.c"
  357. "esp_ble_mesh/mesh_common/mesh_buf.c"
  358. "esp_ble_mesh/mesh_common/mesh_common.c"
  359. "esp_ble_mesh/mesh_common/mesh_kernel.c"
  360. "esp_ble_mesh/mesh_common/mesh_mutex.c"
  361. "esp_ble_mesh/mesh_common/mesh_timer.c"
  362. "esp_ble_mesh/mesh_common/mesh_util.c"
  363. "esp_ble_mesh/mesh_core/storage/settings_nvs.c"
  364. "esp_ble_mesh/mesh_core/access.c"
  365. "esp_ble_mesh/mesh_core/adv.c"
  366. "esp_ble_mesh/mesh_core/beacon.c"
  367. "esp_ble_mesh/mesh_core/cfg_cli.c"
  368. "esp_ble_mesh/mesh_core/cfg_srv.c"
  369. "esp_ble_mesh/mesh_core/crypto.c"
  370. "esp_ble_mesh/mesh_core/fast_prov.c"
  371. "esp_ble_mesh/mesh_core/friend.c"
  372. "esp_ble_mesh/mesh_core/health_cli.c"
  373. "esp_ble_mesh/mesh_core/health_srv.c"
  374. "esp_ble_mesh/mesh_core/local_operation.c"
  375. "esp_ble_mesh/mesh_core/lpn.c"
  376. "esp_ble_mesh/mesh_core/main.c"
  377. "esp_ble_mesh/mesh_core/net.c"
  378. "esp_ble_mesh/mesh_core/prov.c"
  379. "esp_ble_mesh/mesh_core/provisioner_main.c"
  380. "esp_ble_mesh/mesh_core/provisioner_prov.c"
  381. "esp_ble_mesh/mesh_core/proxy_client.c"
  382. "esp_ble_mesh/mesh_core/proxy_server.c"
  383. "esp_ble_mesh/mesh_core/settings_uid.c"
  384. "esp_ble_mesh/mesh_core/settings.c"
  385. "esp_ble_mesh/mesh_core/scan.c"
  386. "esp_ble_mesh/mesh_core/test.c"
  387. "esp_ble_mesh/mesh_core/transport.c"
  388. "esp_ble_mesh/mesh_models/common/device_property.c"
  389. "esp_ble_mesh/mesh_models/client/client_common.c"
  390. "esp_ble_mesh/mesh_models/client/generic_client.c"
  391. "esp_ble_mesh/mesh_models/client/lighting_client.c"
  392. "esp_ble_mesh/mesh_models/client/sensor_client.c"
  393. "esp_ble_mesh/mesh_models/client/time_scene_client.c"
  394. "esp_ble_mesh/mesh_models/server/generic_server.c"
  395. "esp_ble_mesh/mesh_models/server/lighting_server.c"
  396. "esp_ble_mesh/mesh_models/server/sensor_server.c"
  397. "esp_ble_mesh/mesh_models/server/server_common.c"
  398. "esp_ble_mesh/mesh_models/server/state_binding.c"
  399. "esp_ble_mesh/mesh_models/server/state_transition.c"
  400. "esp_ble_mesh/mesh_models/server/time_scene_server.c")
  401. endif()
  402. if(CONFIG_BT_NIMBLE_ENABLED)
  403. list(APPEND include_dirs
  404. host/nimble/nimble/porting/nimble/include
  405. host/nimble/port/include
  406. host/nimble/nimble/nimble/include
  407. host/nimble/nimble/nimble/host/include
  408. host/nimble/nimble/nimble/host/services/ans/include
  409. host/nimble/nimble/nimble/host/services/bas/include
  410. host/nimble/nimble/nimble/host/services/gap/include
  411. host/nimble/nimble/nimble/host/services/gatt/include
  412. host/nimble/nimble/nimble/host/services/ias/include
  413. host/nimble/nimble/nimble/host/services/ipss/include
  414. host/nimble/nimble/nimble/host/services/lls/include
  415. host/nimble/nimble/nimble/host/services/tps/include
  416. host/nimble/nimble/nimble/host/util/include
  417. host/nimble/nimble/nimble/host/store/ram/include
  418. host/nimble/nimble/nimble/host/store/config/include
  419. host/nimble/nimble/porting/npl/freertos/include
  420. host/nimble/esp-hci/include)
  421. if(NOT CONFIG_BT_NIMBLE_CRYPTO_STACK_MBEDTLS)
  422. list(APPEND include_dirs
  423. host/nimble/nimble/ext/tinycrypt/include)
  424. list(APPEND srcs "host/nimble/nimble/ext/tinycrypt/src/utils.c"
  425. "host/nimble/nimble/ext/tinycrypt/src/sha256.c"
  426. "host/nimble/nimble/ext/tinycrypt/src/ecc.c"
  427. "host/nimble/nimble/ext/tinycrypt/src/ctr_prng.c"
  428. "host/nimble/nimble/ext/tinycrypt/src/ctr_mode.c"
  429. "host/nimble/nimble/ext/tinycrypt/src/aes_decrypt.c"
  430. "host/nimble/nimble/ext/tinycrypt/src/aes_encrypt.c"
  431. "host/nimble/nimble/ext/tinycrypt/src/ccm_mode.c"
  432. "host/nimble/nimble/ext/tinycrypt/src/ecc_dsa.c"
  433. "host/nimble/nimble/ext/tinycrypt/src/cmac_mode.c"
  434. "host/nimble/nimble/ext/tinycrypt/src/ecc_dh.c"
  435. "host/nimble/nimble/ext/tinycrypt/src/hmac_prng.c"
  436. "host/nimble/nimble/ext/tinycrypt/src/ecc_platform_specific.c"
  437. "host/nimble/nimble/ext/tinycrypt/src/hmac.c"
  438. "host/nimble/nimble/ext/tinycrypt/src/cbc_mode.c")
  439. endif()
  440. list(APPEND srcs "host/nimble/nimble/nimble/host/util/src/addr.c"
  441. "host/nimble/nimble/nimble/host/services/gatt/src/ble_svc_gatt.c"
  442. "host/nimble/nimble/nimble/host/services/tps/src/ble_svc_tps.c"
  443. "host/nimble/nimble/nimble/host/services/ias/src/ble_svc_ias.c"
  444. "host/nimble/nimble/nimble/host/services/ipss/src/ble_svc_ipss.c"
  445. "host/nimble/nimble/nimble/host/services/ans/src/ble_svc_ans.c"
  446. "host/nimble/nimble/nimble/host/services/gap/src/ble_svc_gap.c"
  447. "host/nimble/nimble/nimble/host/services/bas/src/ble_svc_bas.c"
  448. "host/nimble/nimble/nimble/host/services/lls/src/ble_svc_lls.c"
  449. "host/nimble/nimble/nimble/host/src/ble_hs_conn.c"
  450. "host/nimble/nimble/nimble/host/src/ble_store_util.c"
  451. "host/nimble/nimble/nimble/host/src/ble_sm.c"
  452. "host/nimble/nimble/nimble/host/src/ble_hs_shutdown.c"
  453. "host/nimble/nimble/nimble/host/src/ble_l2cap_sig_cmd.c"
  454. "host/nimble/nimble/nimble/host/src/ble_hs_hci_cmd.c"
  455. "host/nimble/nimble/nimble/host/src/ble_hs_id.c"
  456. "host/nimble/nimble/nimble/host/src/ble_att_svr.c"
  457. "host/nimble/nimble/nimble/host/src/ble_gatts_lcl.c"
  458. "host/nimble/nimble/nimble/host/src/ble_ibeacon.c"
  459. "host/nimble/nimble/nimble/host/src/ble_hs_atomic.c"
  460. "host/nimble/nimble/nimble/host/src/ble_sm_alg.c"
  461. "host/nimble/nimble/nimble/host/src/ble_hs_stop.c"
  462. "host/nimble/nimble/nimble/host/src/ble_hs.c"
  463. "host/nimble/nimble/nimble/host/src/ble_hs_hci_evt.c"
  464. "host/nimble/nimble/nimble/host/src/ble_hs_dbg.c"
  465. "host/nimble/nimble/nimble/host/src/ble_hs_mqueue.c"
  466. "host/nimble/nimble/nimble/host/src/ble_hs_periodic_sync.c"
  467. "host/nimble/nimble/nimble/host/src/ble_att.c"
  468. "host/nimble/nimble/nimble/host/src/ble_gattc.c"
  469. "host/nimble/nimble/nimble/host/src/ble_store.c"
  470. "host/nimble/nimble/nimble/host/src/ble_sm_lgcy.c"
  471. "host/nimble/nimble/nimble/host/src/ble_hs_cfg.c"
  472. "host/nimble/nimble/nimble/host/src/ble_monitor.c"
  473. "host/nimble/nimble/nimble/host/src/ble_att_clt.c"
  474. "host/nimble/nimble/nimble/host/src/ble_l2cap_coc.c"
  475. "host/nimble/nimble/nimble/host/src/ble_hs_mbuf.c"
  476. "host/nimble/nimble/nimble/host/src/ble_att_cmd.c"
  477. "host/nimble/nimble/nimble/host/src/ble_hs_log.c"
  478. "host/nimble/nimble/nimble/host/src/ble_eddystone.c"
  479. "host/nimble/nimble/nimble/host/src/ble_hs_startup.c"
  480. "host/nimble/nimble/nimble/host/src/ble_l2cap_sig.c"
  481. "host/nimble/nimble/nimble/host/src/ble_gap.c"
  482. "host/nimble/nimble/nimble/host/src/ble_sm_cmd.c"
  483. "host/nimble/nimble/nimble/host/src/ble_uuid.c"
  484. "host/nimble/nimble/nimble/host/src/ble_hs_pvcy.c"
  485. "host/nimble/nimble/nimble/host/src/ble_hs_flow.c"
  486. "host/nimble/nimble/nimble/host/src/ble_l2cap.c"
  487. "host/nimble/nimble/nimble/host/src/ble_sm_sc.c"
  488. "host/nimble/nimble/nimble/host/src/ble_hs_misc.c"
  489. "host/nimble/nimble/nimble/host/src/ble_gatts.c"
  490. "host/nimble/nimble/nimble/host/src/ble_hs_adv.c"
  491. "host/nimble/nimble/nimble/host/src/ble_hs_hci.c"
  492. "host/nimble/nimble/nimble/host/src/ble_hs_hci_util.c"
  493. "host/nimble/nimble/nimble/host/src/ble_hs_resolv.c"
  494. "host/nimble/nimble/nimble/host/store/ram/src/ble_store_ram.c"
  495. "host/nimble/nimble/nimble/host/store/config/src/ble_store_config.c"
  496. "host/nimble/nimble/nimble/host/store/config/src/ble_store_nvs.c"
  497. "host/nimble/nimble/nimble/src/ble_util.c"
  498. "host/nimble/nimble/porting/npl/freertos/src/nimble_port_freertos.c"
  499. "host/nimble/nimble/porting/npl/freertos/src/npl_os_freertos.c"
  500. "host/nimble/nimble/porting/nimble/src/endian.c"
  501. "host/nimble/nimble/porting/nimble/src/os_cputime_pwr2.c"
  502. "host/nimble/nimble/porting/nimble/src/hal_timer.c"
  503. "host/nimble/nimble/porting/nimble/src/os_mempool.c"
  504. "host/nimble/nimble/porting/nimble/src/os_msys_init.c"
  505. "host/nimble/nimble/porting/nimble/src/nimble_port.c"
  506. "host/nimble/nimble/porting/nimble/src/mem.c"
  507. "host/nimble/nimble/porting/nimble/src/os_mbuf.c"
  508. "host/nimble/nimble/porting/nimble/src/os_cputime.c"
  509. "host/nimble/esp-hci/src/esp_nimble_hci.c"
  510. "host/nimble/port/src/esp_nimble_mem.c")
  511. if (CONFIG_BLE_MESH)
  512. list(APPEND srcs "esp_ble_mesh/mesh_core/nimble_host/mesh_bearer_adapt.c")
  513. endif()
  514. if(CONFIG_BT_NIMBLE_MESH)
  515. list(APPEND include_dirs
  516. host/nimble/nimble/nimble/host/mesh/include)
  517. list(APPEND srcs "host/nimble/nimble/nimble/host/mesh/src/shell.c"
  518. "host/nimble/nimble/nimble/host/mesh/src/friend.c"
  519. "host/nimble/nimble/nimble/host/mesh/src/crypto.c"
  520. "host/nimble/nimble/nimble/host/mesh/src/settings.c"
  521. "host/nimble/nimble/nimble/host/mesh/src/adv.c"
  522. "host/nimble/nimble/nimble/host/mesh/src/model_srv.c"
  523. "host/nimble/nimble/nimble/host/mesh/src/beacon.c"
  524. "host/nimble/nimble/nimble/host/mesh/src/glue.c"
  525. "host/nimble/nimble/nimble/host/mesh/src/model_cli.c"
  526. "host/nimble/nimble/nimble/host/mesh/src/transport.c"
  527. "host/nimble/nimble/nimble/host/mesh/src/prov.c"
  528. "host/nimble/nimble/nimble/host/mesh/src/mesh.c"
  529. "host/nimble/nimble/nimble/host/mesh/src/access.c"
  530. "host/nimble/nimble/nimble/host/mesh/src/cfg_srv.c"
  531. "host/nimble/nimble/nimble/host/mesh/src/cfg_cli.c"
  532. "host/nimble/nimble/nimble/host/mesh/src/light_model.c"
  533. "host/nimble/nimble/nimble/host/mesh/src/health_cli.c"
  534. "host/nimble/nimble/nimble/host/mesh/src/lpn.c"
  535. "host/nimble/nimble/nimble/host/mesh/src/proxy.c"
  536. "host/nimble/nimble/nimble/host/mesh/src/health_srv.c"
  537. "host/nimble/nimble/nimble/host/mesh/src/testing.c"
  538. "host/nimble/nimble/nimble/host/mesh/src/net.c")
  539. endif()
  540. endif()
  541. endif()
  542. # requirements can't depend on config
  543. idf_component_register(SRCS "${srcs}"
  544. INCLUDE_DIRS "${include_dirs}"
  545. PRIV_INCLUDE_DIRS "${priv_include_dirs}"
  546. REQUIRES nvs_flash soc esp_timer
  547. PRIV_REQUIRES esp_ipc)
  548. if(CONFIG_BT_ENABLED)
  549. target_compile_options(${COMPONENT_LIB} PRIVATE -Wno-implicit-fallthrough -Wno-unused-const-variable)
  550. target_link_libraries(${COMPONENT_LIB} INTERFACE "-L${CMAKE_CURRENT_LIST_DIR}/controller/lib")
  551. target_link_libraries(${COMPONENT_LIB} PUBLIC btdm_app)
  552. endif()