1 # Include the nanopb provided Makefile rules
2 include ../../extra/nanopb.mk
4 # Compiler flags to enable all warnings & debug info
5 CFLAGS = -Wall -Werror -g -O0
6 CFLAGS += -I$(NANOPB_DIR)
8 # C source code files that are required
9 CSRC = simple.c # The main program
10 CSRC += simple.pb.c # The compiled protocol definition
11 CSRC += $(NANOPB_DIR)/pb_encode.c # The nanopb encoder
12 CSRC += $(NANOPB_DIR)/pb_decode.c # The nanopb decoder
14 # Build rule for the main program
16 $(CC) $(CFLAGS) -osimple $(CSRC)
18 # Build rule for the protocol
19 simple.pb.c: simple.proto
20 $(PROTOC) $(PROTOC_OPTS) --nanopb_out=. simple.proto