component.mk 13 KB

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