xref: /btstack/test/mesh/Makefile (revision b6fc147f78a37f3479b846963ca40c9b931f6e2f)
1 # Makefile for libusb based examples
2BTSTACK_ROOT = ../..
3
4ATT  += \
5	att_dispatch.c       	    \
6	att_db.c 				 	\
7	att_server.c        	    \
8	gatt_bearer.c               \
9	mesh_proxy_service_server.c \
10
11CORE += \
12	adv_bearer.c \
13	beacon.c \
14	btstack_link_key_db_fs.c \
15	btstack_run_loop_posix.c \
16	btstack_stdin_posix.c \
17	btstack_uart_block_posix_pty.c \
18	hci_transport_h2_libusb.c \
19	hci_transport_h4.c \
20	btstack_tlv_posix.c \
21	mesh_iv_index_seq_number.c \
22	mesh_node.c \
23	le_device_db_fs.c \
24	l2cap.c \
25	uECC.c \
26	rijndael.c \
27	main.c \
28
29
30# examples
31include ${BTSTACK_ROOT}/example/Makefile.inc
32include ${BTSTACK_ROOT}/src/ble/gatt-service/Makefile.inc
33
34
35CFLAGS  += -g -DUNIT_TEST -Wall \
36	-I$(BTSTACK_ROOT)/platform/embedded \
37	-I$(BTSTACK_ROOT)/platform/posix \
38	-I$(BTSTACK_ROOT)/3rd-party/tinydir \
39	-I$(BTSTACK_ROOT)/test/rijndael \
40
41VPATH += ${BTSTACK_ROOT}/test/rijndael
42VPATH += ${BTSTACK_ROOT}/src/mesh
43VPATH += ${BTSTACK_ROOT}/src/classic
44VPATH += ${BTSTACK_ROOT}/platform/posix
45VPATH += ${BTSTACK_ROOT}/platform/embedded
46VPATH += ${BTSTACK_ROOT}/platform/libusb
47VPATH += ${BTSTACK_ROOT}/src/ble/gatt-service
48
49# cpputest
50CC_UNIT = g++
51
52# libusb
53CFLAGS  += $(shell pkg-config libusb-1.0 --cflags)
54LDFLAGS += $(shell pkg-config libusb-1.0 --libs)
55
56# cppUTest
57LDFLAGS += -lCppUTest -lCppUTestExt
58
59
60mesh_pts: mesh_pts.h ${CORE_OBJ} ${COMMON_OBJ} ${ATT_OBJ} ${GATT_SERVER_OBJ} ${SM_OBJ} ${MESH_OBJ} mesh_pts.o
61	${CC} $(filter-out mesh_pts.h,$^) ${CFLAGS} ${LDFLAGS} -o $@
62
63provisioner: ${CORE_OBJ} ${COMMON_OBJ} ${ATT_OBJ} ${SM_OBJ} pb_adv.o mesh_crypto.o provisioning_provisioner.o mesh_keys.o mesh_foundation.o mesh_network.o provisioner.o
64	${CC} $^ ${CFLAGS} ${LDFLAGS} -o $@
65
66mesh_message_test: mesh_foundation.o mesh_node.o mesh_message_test.c mesh_iv_index_seq_number.o mesh_network.o mesh_peer.o mesh_lower_transport.o mesh_upper_transport.o mesh_virtual_addresses.o  mesh_keys.o  mesh_crypto.o btstack_memory.o btstack_memory_pool.o btstack_util.o btstack_crypto.o btstack_linked_list.o hci_dump.o uECC.o mock.o rijndael.o hci_cmd.o
67	g++ $^ ${CFLAGS} ${LDFLAGS} -o $@
68
69sniffer: ${CORE_OBJ} ${COMMON_OBJ} ${ATT_OBJ} ${SM_OBJ} mesh_keys.o mesh_network.o mesh_foundation.o sniffer.c
70	${CC} $^ ${CFLAGS} ${LDFLAGS} -o $@
71
72provisioning_device_test: provisioning_device_test.cpp uECC.o mesh_crypto.o provisioning_device.o btstack_crypto.o btstack_util.o btstack_linked_list.o  mesh_node.o mock.o rijndael.o hci_cmd.o hci_dump.o
73	${CC_UNIT} ${CFLAGS} ${LDFLAGS} $^ -lCppUTest -lCppUTestExt -o $@
74
75provisioning_provisioner_test: provisioning_provisioner_test.cpp uECC.o mesh_crypto.o provisioning_provisioner.o btstack_crypto.o btstack_util.o btstack_linked_list.o mock.o rijndael.o hci_cmd.o hci_dump.o
76	${CC_UNIT} ${CFLAGS} ${LDFLAGS} $^ -lCppUTest -lCppUTestExt -o $@
77
78
79EXAMPLES = mesh_pts provisioner sniffer provisioning_device_test provisioning_provisioner_test mesh_message_test
80
81all: ${EXAMPLES}
82
83clean:
84	rm -f  *.o *.out *.exe
85	rm -rf *.dSYM
86	rm -f ${EXAMPLES}
87	rm -f  mesh_provisioning_device.h
88
89