1# Makefile for libusb based PTS tests 2BTSTACK_ROOT = ../.. 3 4include ${BTSTACK_ROOT}/3rd-party/bluedroid/decoder/Makefile.inc 5include ${BTSTACK_ROOT}/3rd-party/bluedroid/encoder/Makefile.inc 6 7CORE += \ 8 btstack_memory.c \ 9 btstack_linked_list.c \ 10 btstack_memory_pool.c \ 11 btstack_run_loop.c \ 12 btstack_util.c \ 13 main.c \ 14 btstack_stdin_posix.c \ 15 16 17COMMON += \ 18 ad_parser.c \ 19 btstack_link_key_db_fs.c \ 20 btstack_run_loop_posix.c \ 21 hci.c \ 22 hci_cmd.c \ 23 hci_dump.c \ 24 hci_transport_h2_libusb.c \ 25 l2cap.c \ 26 l2cap_signaling.c \ 27 le_device_db_fs.c \ 28 sdp_server.c \ 29 sdp_util.c \ 30 wav_util.c \ 31 sdp_server.c \ 32 sdp_client.c \ 33 34CFLAGS += -g -Wall -Wenum-compare -Wmissing-prototypes -Wstrict-prototypes -Wshadow -Wunused-variable -Wunused-parameter 35CFLAGS += -I. 36CFLAGS += -I${BTSTACK_ROOT}/src 37CFLAGS += -I${BTSTACK_ROOT}/src/classic 38CFLAGS += -I${BTSTACK_ROOT}/3rd-party/bluedroid/decoder/include -D OI_DEBUG 39CFLAGS += -I${BTSTACK_ROOT}/3rd-party/bluedroid/encoder/include 40CFLAGS += -I${BTSTACK_ROOT}/3rd-party/hxcmod-player 41CFLAGS += -I${BTSTACK_ROOT}/3rd-party/hxcmod-player/mods 42CFLAGS += -I${BTSTACK_ROOT}/platform/posix 43CFLAGS += -I${BTSTACK_ROOT}/platform/embedded 44CFLAGS += -I${BTSTACK_ROOT}/port/libusb 45 46VPATH += ${BTSTACK_ROOT}/src 47VPATH += ${BTSTACK_ROOT}/src/classic 48VPATH += ${BTSTACK_ROOT}/platform/posix 49VPATH += ${BTSTACK_ROOT}/platform/libusb 50VPATH += ${BTSTACK_ROOT}/port/libusb 51VPATH += ${BTSTACK_ROOT}/3rd-party/bluedroid/decoder/srce 52VPATH += ${BTSTACK_ROOT}/3rd-party/bluedroid/encoder/srce 53VPATH += ${BTSTACK_ROOT}/3rd-party/hxcmod-player 54VPATH += ${BTSTACK_ROOT}/3rd-party/hxcmod-player/mods 55 56# use pkg-config for libusb 57CFLAGS += $(shell pkg-config libusb-1.0 --cflags) 58LDFLAGS += $(shell pkg-config libusb-1.0 --libs) 59 60# use pkg-config for portaudio 61CFLAGS += $(shell pkg-config portaudio-2.0 --cflags) -DHAVE_PORTAUDIO 62LDFLAGS += $(shell pkg-config portaudio-2.0 --libs) 63 64SBC_DECODER += \ 65 ${BTSTACK_ROOT}/src/classic/btstack_sbc_plc.c \ 66 ${BTSTACK_ROOT}/src/classic/btstack_sbc_bludroid.c \ 67 68SBC_ENCODER += \ 69 ${BTSTACK_ROOT}/src/classic/btstack_sbc_bludroid.c \ 70 ${BTSTACK_ROOT}/src/classic/hfp_msbc.c \ 71 72AVDTP += \ 73 avdtp_util.c \ 74 avdtp.c \ 75 avdtp_initiator.c \ 76 avdtp_acceptor.c \ 77 avdtp_source.c \ 78 avdtp_sink.c \ 79 a2dp_source.c \ 80 a2dp_sink.c \ 81 btstack_ring_buffer.c \ 82 83HXCMOD_PLAYER = \ 84 ${BTSTACK_ROOT}/3rd-party/hxcmod-player/hxcmod.c \ 85 ${BTSTACK_ROOT}/3rd-party/hxcmod-player/mods/nao-deceased_by_disease.c \ 86 87AVDTP_TESTS = portaudio_test 88#sine_encode_decode_ring_buffer_test sine_encode_decode_test sine_encode_decode_performance_test 89 90CORE_OBJ = $(CORE:.c=.o) 91COMMON_OBJ = $(COMMON:.c=.o) 92SBC_DECODER_OBJ = $(SBC_DECODER:.c=.o) 93SBC_ENCODER_OBJ = $(SBC_ENCODER:.c=.o) 94AVDTP_OBJ = $(AVDTP:.c=.o) 95HXCMOD_PLAYER_OBJ = $(HXCMOD_PLAYER:.c=.o) 96 97# For more warnings & errors, use C++ 98# CC=g++ 99 100all: ${AVDTP_TESTS} 101 102portaudio_test: btstack_util.o hci_dump.o wav_util.o btstack_ring_buffer.o portaudio_test.c 103 ${CC} $^ ${CFLAGS} ${LDFLAGS} -o $@ 104 105 106sine_encode_decode_test: ${CORE_OBJ} ${COMMON_OBJ} ${SBC_DECODER_OBJ} ${SBC_ENCODER_OBJ} ${AVDTP_OBJ} sine_encode_decode_test.c 107 ${CC} $^ ${CFLAGS} ${LDFLAGS} -o $@ 108 109sine_encode_decode_ring_buffer_test: ${CORE_OBJ} ${COMMON_OBJ} ${SBC_DECODER_OBJ} ${SBC_ENCODER_OBJ} ${AVDTP_OBJ} sine_encode_decode_ring_buffer_test.c 110 ${CC} $^ ${CFLAGS} ${LDFLAGS} -o $@ 111 112sine_encode_decode_performance_test: ${CORE_OBJ} ${COMMON_OBJ} ${SBC_DECODER_OBJ} ${SBC_ENCODER_OBJ} ${AVDTP_OBJ} sine_encode_decode_performance_test.c 113 ${CC} $^ ${CFLAGS} ${LDFLAGS} -o $@ 114 115 116test: all 117 118clean: 119 rm -rf *.pyc *.o $(AVDTP_TESTS) *.dSYM *_test *.wav *.sbc ${BTSTACK_ROOT}/port/libusb/*.o 120