1 # Include the nanopb provided Makefile rules 2 include ../../extra/nanopb.mk 3 4 # Compiler flags to enable all warnings & debug info 5 CFLAGS = -Wall -Werror -g -O0 6 CFLAGS += -I$(NANOPB_DIR) 7 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 13 CSRC += $(NANOPB_DIR)/pb_common.c # The nanopb common parts 14 15 # Build rule for the main program 16 simple: $(CSRC) 17 $(CC) $(CFLAGS) -osimple $(CSRC) 18 19 # Build rule for the protocol 20 simple.pb.c: simple.proto 21 $(PROTOC) $(PROTOC_OPTS) --nanopb_out=. simple.proto 22 23