1# Makefile for basic test 2BTSTACK_ROOT = ../.. 3 4CORE += \ 5 ad_parser.c \ 6 btstack_audio.c \ 7 btstack_audio_portaudio.c \ 8 btstack_link_key_db_tlv.c \ 9 btstack_linked_list.c \ 10 btstack_memory.c \ 11 btstack_memory_pool.c \ 12 btstack_run_loop.c \ 13 btstack_run_loop_posix.c \ 14 btstack_stdin_posix.c \ 15 btstack_tlv.c \ 16 btstack_tlv_posix.c \ 17 btstack_util.c \ 18 device_id_server.c \ 19 hci.c \ 20 hci_cmd.c \ 21 hci_dump.c \ 22 hci_transport_h2_libusb.c \ 23 l2cap.c \ 24 l2cap_signaling.c \ 25 main.c \ 26 rfcomm.c \ 27 sdp_client.c \ 28 sdp_client_rfcomm.c \ 29 sdp_server.c \ 30 sdp_util.c \ 31 spp_server.c \ 32 33SBC_DECODER += \ 34 ${BTSTACK_ROOT}/src/classic/btstack_sbc_plc.c \ 35 ${BTSTACK_ROOT}/src/classic/btstack_sbc_decoder_bluedroid.c \ 36 37SBC_ENCODER += \ 38 ${BTSTACK_ROOT}/src/classic/btstack_sbc_encoder_bluedroid.c \ 39 ${BTSTACK_ROOT}/src/classic/hfp_msbc.c \ 40 41AVDTP += \ 42 avdtp_util.c \ 43 avdtp.c \ 44 avdtp_initiator.c \ 45 avdtp_acceptor.c \ 46 avdtp_source.c \ 47 avdtp_sink.c \ 48 a2dp_source.c \ 49 a2dp_sink.c \ 50 btstack_ring_buffer.c \ 51 btstack_resample.c \ 52 53AVRCP += \ 54 avrcp_media_item_iterator.c \ 55 avrcp.c \ 56 avrcp_target.c \ 57 avrcp_controller.c \ 58 avrcp_browsing.c \ 59 avrcp_browsing_target.c \ 60 avrcp_browsing_controller.c \ 61 62HXCMOD_PLAYER = \ 63 ${BTSTACK_ROOT}/3rd-party/hxcmod-player/hxcmod.c \ 64 ${BTSTACK_ROOT}/3rd-party/hxcmod-player/mods/nao-deceased_by_disease.c \ 65 66include ${BTSTACK_ROOT}/3rd-party/bluedroid/decoder/Makefile.inc 67include ${BTSTACK_ROOT}/3rd-party/bluedroid/encoder/Makefile.inc 68 69CFLAGS += -g -Wall -Werror -Wmissing-prototypes -Wstrict-prototypes -Wshadow -Wunused-variable -Wunused-parameter -Wswitch-default 70CFLAGS += -D ENABLE_TESTING_SUPPORT 71CFLAGS += -D ENABLE_LE_SIGNED_WRITE 72CFLAGS += -fsanitize=address -fno-omit-frame-pointer 73 74CFLAGS += -I. 75CFLAGS += -I${BTSTACK_ROOT}/src 76CFLAGS += -I${BTSTACK_ROOT}/example 77CFLAGS += -I${BTSTACK_ROOT}/3rd-party/bluedroid/decoder/include -D OI_DEBUG 78CFLAGS += -I${BTSTACK_ROOT}/3rd-party/bluedroid/encoder/include 79CFLAGS += -I${BTSTACK_ROOT}/3rd-party/micro-ecc 80CFLAGS += -I${BTSTACK_ROOT}/3rd-party/rijndael 81CFLAGS += -I${BTSTACK_ROOT}/3rd-party/tinydir 82CFLAGS += -I${BTSTACK_ROOT}/3rd-party/yxml 83CFLAGS += -I${BTSTACK_ROOT}/platform/posix 84 85VPATH += ${BTSTACK_ROOT}/src 86VPATH += ${BTSTACK_ROOT}/src/ble/mesh 87VPATH += ${BTSTACK_ROOT}/src/classic 88VPATH += ${BTSTACK_ROOT}/example 89VPATH += ${BTSTACK_ROOT}/platform/posix 90VPATH += ${BTSTACK_ROOT}/platform/libusb 91VPATH += ${BTSTACK_ROOT}/3rd-party/bluedroid/decoder/srce 92VPATH += ${BTSTACK_ROOT}/3rd-party/bluedroid/encoder/srce 93VPATH += ${BTSTACK_ROOT}/3rd-party/micro-ecc 94VPATH += ${BTSTACK_ROOT}/3rd-party/rijndael 95 96# use pkg-config for libusb 97CFLAGS += $(shell pkg-config libusb-1.0 --cflags) 98LDFLAGS += $(shell pkg-config libusb-1.0 --libs) 99# use pkg-config for portaudio 100CFLAGS += $(shell pkg-config portaudio-2.0 --cflags) -DHAVE_PORTAUDIO 101LDFLAGS += $(shell pkg-config portaudio-2.0 --libs) 102# use pkg-config for fdk-aac 103CFLAGS += $(shell pkg-config fdk-aac --cflags) -DHAVE_AAC_FDK 104LDFLAGS += $(shell pkg-config fdk-aac --libs) 105 106CORE_OBJ = $(CORE:.c=.o) 107SBC_DECODER_OBJ = $(SBC_DECODER:.c=.o) 108SBC_ENCODER_OBJ = $(SBC_ENCODER:.c=.o) 109AVDTP_OBJ = $(AVDTP:.c=.o) 110AVRCP_OBJ = $(AVRCP:.c=.o) 111HXCMOD_PLAYER_OBJ = ${HXCMOD_PLAYER:.c=.o} 112 113EXAMPLES = spp_counter 114 115all: ${EXAMPLES} 116 117spp_counter: spp_counter.o ${CORE_OBJ} 118 ${CC} $^ ${CFLAGS} ${LDFLAGS} -o $@ 119 120myclean: 121 rm -rf *.o *.dSYM *.wav *.sbc ${EXAMPLES} 122 123clean: myclean 124 125test: ${EXAMPLES} 126 echo "No unit tests here, but examples build" 127 128coverage: all 129 echo "No coverage tests here" 130