component.mk 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246
  1. #
  2. # Component Makefile
  3. #
  4. ifdef CONFIG_BT_ENABLED
  5. COMPONENT_SRCDIRS := controller
  6. COMPONENT_ADD_INCLUDEDIRS := include
  7. LIBS := btdm_app
  8. COMPONENT_ADD_LDFLAGS := -lbt -L $(COMPONENT_PATH)/controller/lib_esp32/esp32 \
  9. -u ld_include_hli_vectors_bt \
  10. $(addprefix -l,$(LIBS))
  11. # re-link program if BT binary libs change
  12. COMPONENT_ADD_LINKER_DEPS := $(patsubst %,$(COMPONENT_PATH)/controller/lib_esp32/esp32/lib%.a,$(LIBS))
  13. COMPONENT_SUBMODULES += controller/lib_esp32
  14. COMPONENT_ADD_LDFRAGMENTS += linker.lf
  15. # TODO: annotate fallthroughs in Bluedroid code with comments
  16. CFLAGS += -Wno-implicit-fallthrough
  17. COMPONENT_ADD_INCLUDEDIRS += include/esp32/include
  18. COMPONENT_SRCDIRS += controller/esp32
  19. COMPONENT_PRIV_INCLUDEDIRS += common/btc/include \
  20. common/include
  21. COMPONENT_ADD_INCLUDEDIRS += common/api/include/api \
  22. common/btc/profile/esp/blufi/include \
  23. common/btc/profile/esp/include \
  24. common/osi/include
  25. COMPONENT_SRCDIRS += common/api \
  26. common/btc/core \
  27. common/osi \
  28. common/btc/profile/esp/blufi
  29. ifdef CONFIG_BT_BLUEDROID_ENABLED
  30. COMPONENT_PRIV_INCLUDEDIRS += host/bluedroid/bta/include \
  31. host/bluedroid/bta/ar/include \
  32. host/bluedroid/bta/av/include \
  33. host/bluedroid/bta/hf_ag/include \
  34. host/bluedroid/bta/hf_client/include \
  35. host/bluedroid/bta/dm/include \
  36. host/bluedroid/bta/gatt/include \
  37. host/bluedroid/bta/hd/include \
  38. host/bluedroid/bta/hh/include \
  39. host/bluedroid/bta/jv/include \
  40. host/bluedroid/bta/sdp/include \
  41. host/bluedroid/bta/sys/include \
  42. host/bluedroid/device/include \
  43. host/bluedroid/gki/include \
  44. host/bluedroid/hci/include \
  45. host/bluedroid/utils/include \
  46. host/bluedroid/external/sbc/decoder/include \
  47. host/bluedroid/external/sbc/encoder/include \
  48. host/bluedroid/external/sbc/plc/include \
  49. host/bluedroid/btc/profile/esp/include \
  50. host/bluedroid/btc/profile/std/gatt/include \
  51. host/bluedroid/btc/profile/std/gap/include \
  52. host/bluedroid/btc/profile/std/a2dp/include \
  53. host/bluedroid/btc/profile/std/hid/include \
  54. host/bluedroid/btc/profile/std/include \
  55. host/bluedroid/btc/include \
  56. host/bluedroid/btif/include \
  57. host/bluedroid/stack/btm/include \
  58. host/bluedroid/stack/btu/include \
  59. host/bluedroid/stack/gap/include \
  60. host/bluedroid/stack/gatt/include \
  61. host/bluedroid/stack/hcic/include \
  62. host/bluedroid/stack/hid/include \
  63. host/bluedroid/stack/l2cap/include \
  64. host/bluedroid/stack/sdp/include \
  65. host/bluedroid/stack/smp/include \
  66. host/bluedroid/stack/avct/include \
  67. host/bluedroid/stack/avrc/include \
  68. host/bluedroid/stack/avdt/include \
  69. host/bluedroid/stack/a2dp/include \
  70. host/bluedroid/stack/rfcomm/include \
  71. host/bluedroid/stack/include \
  72. host/bluedroid/utils/include \
  73. host/bluedroid/common/include \
  74. COMPONENT_ADD_INCLUDEDIRS += host/bluedroid/api/include/api \
  75. COMPONENT_SRCDIRS += host/bluedroid/bta/dm \
  76. host/bluedroid/bta/gatt \
  77. host/bluedroid/bta/hd \
  78. host/bluedroid/bta/hh \
  79. host/bluedroid/bta/sdp \
  80. host/bluedroid/bta/av \
  81. host/bluedroid/bta/ar \
  82. host/bluedroid/bta/sys \
  83. host/bluedroid/bta/jv \
  84. host/bluedroid/bta/hf_ag \
  85. host/bluedroid/bta/hf_client \
  86. host/bluedroid/bta \
  87. host/bluedroid/btif \
  88. host/bluedroid/device \
  89. host/bluedroid/gki \
  90. host/bluedroid/hci \
  91. host/bluedroid/main \
  92. host/bluedroid/external/sbc/decoder/srce \
  93. host/bluedroid/external/sbc/encoder/srce \
  94. host/bluedroid/external/sbc/plc \
  95. host/bluedroid/btc/core \
  96. host/bluedroid/btc/profile/std/gap \
  97. host/bluedroid/btc/profile/std/gatt \
  98. host/bluedroid/btc/profile/std/a2dp \
  99. host/bluedroid/btc/profile/std/avrc \
  100. host/bluedroid/btc/profile/std/spp \
  101. host/bluedroid/btc/profile/std/hf_ag \
  102. host/bluedroid/btc/profile/std/hf_client \
  103. host/bluedroid/btc/profile/std/hid \
  104. host/bluedroid/btc/profile \
  105. host/bluedroid/stack/btm \
  106. host/bluedroid/stack/btu \
  107. host/bluedroid/stack/gap \
  108. host/bluedroid/stack/gatt \
  109. host/bluedroid/stack/hcic \
  110. host/bluedroid/stack/hid \
  111. host/bluedroid/stack/include \
  112. host/bluedroid/stack/l2cap \
  113. host/bluedroid/stack/sdp \
  114. host/bluedroid/stack/smp \
  115. host/bluedroid/stack/avct \
  116. host/bluedroid/stack/avrc \
  117. host/bluedroid/stack/avdt \
  118. host/bluedroid/stack/a2dp \
  119. host/bluedroid/stack/rfcomm \
  120. host/bluedroid/stack \
  121. host/bluedroid/utils \
  122. host/bluedroid/api \
  123. host/bluedroid
  124. host/bluedroid/bta/sdp/bta_sdp_act.o: CFLAGS += -Wno-unused-const-variable
  125. host/bluedroid/btc/core/btc_config.o: CFLAGS += -Wno-unused-const-variable
  126. host/bluedroid/stack/btm/btm_sec.o: CFLAGS += -Wno-unused-const-variable
  127. host/bluedroid/stack/smp/smp_keys.o: CFLAGS += -Wno-unused-const-variable
  128. COMPONENT_SRCDIRS += common/btc/profile/esp/blufi/bluedroid_host
  129. ifdef CONFIG_BLE_MESH
  130. COMPONENT_SRCDIRS += esp_ble_mesh/mesh_core/bluedroid_host
  131. endif
  132. endif
  133. ifdef CONFIG_BLE_MESH
  134. COMPONENT_ADD_INCLUDEDIRS += esp_ble_mesh/mesh_common/include \
  135. esp_ble_mesh/mesh_common/tinycrypt/include \
  136. esp_ble_mesh/mesh_core \
  137. esp_ble_mesh/mesh_core/include \
  138. esp_ble_mesh/mesh_core/storage \
  139. esp_ble_mesh/btc/include \
  140. esp_ble_mesh/mesh_models/common/include \
  141. esp_ble_mesh/mesh_models/client/include \
  142. esp_ble_mesh/mesh_models/server/include \
  143. esp_ble_mesh/api/core/include \
  144. esp_ble_mesh/api/models/include \
  145. esp_ble_mesh/api
  146. COMPONENT_SRCDIRS += esp_ble_mesh/mesh_common \
  147. esp_ble_mesh/mesh_common/tinycrypt/src \
  148. esp_ble_mesh/mesh_core \
  149. esp_ble_mesh/mesh_core/storage \
  150. esp_ble_mesh/btc \
  151. esp_ble_mesh/mesh_models/common \
  152. esp_ble_mesh/mesh_models/client \
  153. esp_ble_mesh/mesh_models/server \
  154. esp_ble_mesh/api/core \
  155. esp_ble_mesh/api/models
  156. endif
  157. ifdef CONFIG_BT_NIMBLE_ENABLED
  158. COMPONENT_ADD_INCLUDEDIRS += host/nimble/nimble/nimble/include \
  159. host/nimble/nimble/nimble/host/include \
  160. host/nimble/nimble/porting/nimble/include \
  161. host/nimble/nimble/porting/npl/freertos/include \
  162. host/nimble/nimble/nimble/host/services/ans/include \
  163. host/nimble/nimble/nimble/host/services/bas/include \
  164. host/nimble/nimble/nimble/host/services/dis/include \
  165. host/nimble/nimble/nimble/host/services/gap/include \
  166. host/nimble/nimble/nimble/host/services/gatt/include \
  167. host/nimble/nimble/nimble/host/services/ias/include \
  168. host/nimble/nimble/nimble/host/services/ipss/include \
  169. host/nimble/nimble/nimble/host/services/lls/include \
  170. host/nimble/nimble/nimble/host/services/tps/include \
  171. host/nimble/nimble/nimble/host/util/include \
  172. host/nimble/nimble/nimble/host/store/ram/include \
  173. host/nimble/nimble/nimble/host/store/config/include \
  174. host/nimble/esp-hci/include \
  175. host/nimble/port/include
  176. ifndef CONFIG_BT_NIMBLE_CRYPTO_STACK_MBEDTLS
  177. COMPONENT_ADD_INCLUDEDIRS += host/nimble/nimble/ext/tinycrypt/include
  178. endif
  179. COMPONENT_SRCDIRS += host/nimble/nimble/nimble/host/src \
  180. host/nimble/nimble/porting/nimble/src \
  181. host/nimble/nimble/porting/npl/freertos/src \
  182. host/nimble/nimble/nimble/host/services/ans/src \
  183. host/nimble/nimble/nimble/host/services/bas/src \
  184. host/nimble/nimble/nimble/host/services/dis/src \
  185. host/nimble/nimble/nimble/host/services/gap/src \
  186. host/nimble/nimble/nimble/host/services/gatt/src \
  187. host/nimble/nimble/nimble/host/services/ias/src \
  188. host/nimble/nimble/nimble/host/services/ipss/src \
  189. host/nimble/nimble/nimble/host/services/lls/src \
  190. host/nimble/nimble/nimble/host/services/tps/src \
  191. host/nimble/nimble/nimble/host/util/src \
  192. host/nimble/nimble/nimble/host/store/ram/src \
  193. host/nimble/nimble/nimble/host/store/config/src \
  194. host/nimble/esp-hci/src \
  195. host/nimble/port/src
  196. ifndef CONFIG_BT_NIMBLE_CRYPTO_STACK_MBEDTLS
  197. COMPONENT_SRCDIRS += host/nimble/nimble/ext/tinycrypt/src
  198. endif
  199. COMPONENT_OBJEXCLUDE += host/nimble/nimble/nimble/host/store/config/src/ble_store_config_conf.o
  200. ifdef CONFIG_BLE_MESH
  201. COMPONENT_SRCDIRS += esp_ble_mesh/mesh_core/nimble_host
  202. endif
  203. ifdef CONFIG_BT_NIMBLE_MESH
  204. COMPONENT_ADD_INCLUDEDIRS += host/nimble/nimble/nimble/host/mesh/include
  205. COMPONENT_SRCDIRS += host/nimble/nimble/nimble/host/mesh/src
  206. endif
  207. COMPONENT_SRCDIRS += common/btc/profile/esp/blufi/nimble_host
  208. endif
  209. endif