4 ifdef CONFIG_BT_ENABLED
6 COMPONENT_SRCDIRS := controller
8 COMPONENT_ADD_INCLUDEDIRS := include
12 COMPONENT_ADD_LDFLAGS := -lbt -L $(COMPONENT_PATH)/controller/lib \
13 $(addprefix -l,$(LIBS))
15 # re-link program if BT binary libs change
16 COMPONENT_ADD_LINKER_DEPS := $(patsubst %,$(COMPONENT_PATH)/controller/lib/lib%.a,$(LIBS))
18 COMPONENT_SUBMODULES += controller/lib
20 ifeq ($(GCC_NOT_5_2_0), 1)
21 # TODO: annotate fallthroughs in Bluedroid code with comments
22 CFLAGS += -Wno-implicit-fallthrough
25 ifdef CONFIG_BT_BLUEDROID_ENABLED
27 COMPONENT_PRIV_INCLUDEDIRS += host/bluedroid/bta/include \
28 host/bluedroid/bta/ar/include \
29 host/bluedroid/bta/av/include \
30 host/bluedroid/bta/hf_ag/include \
31 host/bluedroid/bta/hf_client/include \
32 host/bluedroid/bta/dm/include \
33 host/bluedroid/bta/gatt/include \
34 host/bluedroid/bta/hh/include \
35 host/bluedroid/bta/jv/include \
36 host/bluedroid/bta/sdp/include \
37 host/bluedroid/bta/sys/include \
38 host/bluedroid/device/include \
39 host/bluedroid/gki/include \
40 host/bluedroid/hci/include \
41 host/bluedroid/utils/include \
42 host/bluedroid/external/sbc/decoder/include \
43 host/bluedroid/external/sbc/encoder/include \
44 host/bluedroid/external/sbc/plc/include \
45 host/bluedroid/btc/profile/esp/blufi/include \
46 host/bluedroid/btc/profile/esp/include \
47 host/bluedroid/btc/profile/std/gatt/include \
48 host/bluedroid/btc/profile/std/gap/include \
49 host/bluedroid/btc/profile/std/a2dp/include \
50 host/bluedroid/btc/profile/std/include \
51 host/bluedroid/btc/include \
52 host/bluedroid/btif/include \
53 host/bluedroid/stack/btm/include \
54 host/bluedroid/stack/btu/include \
55 host/bluedroid/stack/gap/include \
56 host/bluedroid/stack/gatt/include \
57 host/bluedroid/stack/hcic/include \
58 host/bluedroid/stack/l2cap/include \
59 host/bluedroid/stack/sdp/include \
60 host/bluedroid/stack/smp/include \
61 host/bluedroid/stack/avct/include \
62 host/bluedroid/stack/avrc/include \
63 host/bluedroid/stack/avdt/include \
64 host/bluedroid/stack/a2dp/include \
65 host/bluedroid/stack/rfcomm/include \
66 host/bluedroid/stack/include \
67 host/bluedroid/utils/include \
68 host/bluedroid/common/include
70 COMPONENT_ADD_INCLUDEDIRS += host/bluedroid/api/include/api \
73 COMPONENT_SRCDIRS += host/bluedroid/bta/dm \
74 host/bluedroid/bta/gatt \
75 host/bluedroid/bta/hh \
76 host/bluedroid/bta/sdp \
77 host/bluedroid/bta/av \
78 host/bluedroid/bta/ar \
79 host/bluedroid/bta/sys \
80 host/bluedroid/bta/jv \
81 host/bluedroid/bta/hf_ag \
82 host/bluedroid/bta/hf_client \
85 host/bluedroid/device \
89 host/bluedroid/external/sbc/decoder/srce \
90 host/bluedroid/external/sbc/encoder/srce \
91 host/bluedroid/external/sbc/plc \
92 host/bluedroid/btc/core \
93 host/bluedroid/btc/profile/esp/blufi \
94 host/bluedroid/btc/profile/std/gap \
95 host/bluedroid/btc/profile/std/gatt \
96 host/bluedroid/btc/profile/std/a2dp \
97 host/bluedroid/btc/profile/std/avrc \
98 host/bluedroid/btc/profile/std/spp \
99 host/bluedroid/btc/profile/std/hf_ag \
100 host/bluedroid/btc/profile/std/hf_client \
101 host/bluedroid/btc/profile \
102 host/bluedroid/stack/btm \
103 host/bluedroid/stack/btu \
104 host/bluedroid/stack/gap \
105 host/bluedroid/stack/gatt \
106 host/bluedroid/stack/hcic \
107 host/bluedroid/stack/include \
108 host/bluedroid/stack/l2cap \
109 host/bluedroid/stack/sdp \
110 host/bluedroid/stack/smp \
111 host/bluedroid/stack/avct \
112 host/bluedroid/stack/avrc \
113 host/bluedroid/stack/avdt \
114 host/bluedroid/stack/a2dp \
115 host/bluedroid/stack/rfcomm \
116 host/bluedroid/stack \
117 host/bluedroid/utils \
122 ifeq ($(GCC_NOT_5_2_0), 1)
123 host/bluedroid/bta/sdp/bta_sdp_act.o: CFLAGS += -Wno-unused-const-variable
124 host/bluedroid/btc/core/btc_config.o: CFLAGS += -Wno-unused-const-variable
125 host/bluedroid/stack/btm/btm_sec.o: CFLAGS += -Wno-unused-const-variable
126 host/bluedroid/stack/smp/smp_keys.o: CFLAGS += -Wno-unused-const-variable
129 COMPONENT_PRIV_INCLUDEDIRS += common/btc/include \
132 COMPONENT_SRCDIRS += common/osi \
135 ifdef CONFIG_BLE_MESH
137 COMPONENT_SRCDIRS += esp_ble_mesh/mesh_core/bluedroid_host
142 ifdef CONFIG_BLE_MESH
143 COMPONENT_ADD_INCLUDEDIRS += esp_ble_mesh/mesh_core \
144 esp_ble_mesh/mesh_core/include \
145 esp_ble_mesh/mesh_core/settings \
146 esp_ble_mesh/btc/include \
147 esp_ble_mesh/mesh_models/common/include \
148 esp_ble_mesh/mesh_models/client/include \
149 esp_ble_mesh/api/core/include \
150 esp_ble_mesh/api/models/include \
153 COMPONENT_SRCDIRS += esp_ble_mesh/mesh_core \
154 esp_ble_mesh/mesh_core/settings \
156 esp_ble_mesh/mesh_models/common \
157 esp_ble_mesh/mesh_models/client \
158 esp_ble_mesh/api/core \
159 esp_ble_mesh/api/models
163 ifdef CONFIG_BT_NIMBLE_ENABLED
165 COMPONENT_ADD_INCLUDEDIRS += host/nimble/nimble/nimble/include \
166 host/nimble/nimble/nimble/host/include \
167 host/nimble/nimble/porting/nimble/include \
168 host/nimble/nimble/porting/npl/freertos/include \
169 host/nimble/nimble/nimble/host/services/ans/include \
170 host/nimble/nimble/nimble/host/services/bas/include \
171 host/nimble/nimble/nimble/host/services/gap/include \
172 host/nimble/nimble/nimble/host/services/gatt/include \
173 host/nimble/nimble/nimble/host/services/ias/include \
174 host/nimble/nimble/nimble/host/services/lls/include \
175 host/nimble/nimble/nimble/host/services/tps/include \
176 host/nimble/nimble/nimble/host/util/include \
177 host/nimble/nimble/nimble/host/store/ram/include \
178 host/nimble/nimble/nimble/host/store/config/include \
179 host/nimble/esp-hci/include \
180 host/nimble/port/include
182 ifndef CONFIG_BT_NIMBLE_CRYPTO_STACK_MBEDTLS
183 COMPONENT_ADD_INCLUDEDIRS += host/nimble/nimble/ext/tinycrypt/include
186 COMPONENT_SRCDIRS += host/nimble/nimble/nimble/host/src \
187 host/nimble/nimble/porting/nimble/src \
188 host/nimble/nimble/porting/npl/freertos/src \
189 host/nimble/nimble/nimble/host/services/ans/src \
190 host/nimble/nimble/nimble/host/services/bas/src \
191 host/nimble/nimble/nimble/host/services/gap/src \
192 host/nimble/nimble/nimble/host/services/gatt/src \
193 host/nimble/nimble/nimble/host/services/ias/src \
194 host/nimble/nimble/nimble/host/services/lls/src \
195 host/nimble/nimble/nimble/host/services/tps/src \
196 host/nimble/nimble/nimble/host/util/src \
197 host/nimble/nimble/nimble/host/store/ram/src \
198 host/nimble/nimble/nimble/host/store/config/src \
199 host/nimble/esp-hci/src
201 ifndef CONFIG_BT_NIMBLE_CRYPTO_STACK_MBEDTLS
202 COMPONENT_SRCDIRS += host/nimble/nimble/ext/tinycrypt/src
205 COMPONENT_OBJEXCLUDE += host/nimble/nimble/nimble/host/store/config/src/ble_store_config_conf.o
207 ifdef CONFIG_BLE_MESH
208 COMPONENT_PRIV_INCLUDEDIRS += common/btc/include \
211 COMPONENT_SRCDIRS += common/osi \
213 esp_ble_mesh/mesh_core/nimble_host
215 COMPONENT_ADD_INCLUDEDIRS += common/osi/include
218 ifdef CONFIG_BT_NIMBLE_MESH
220 COMPONENT_ADD_INCLUDEDIRS += host/nimble/nimble/nimble/host/mesh/include
221 COMPONENT_SRCDIRS += host/nimble/nimble/nimble/host/mesh/src