| # Include the nanopb provided Makefile rules | |
| include ../../extra/nanopb.mk | |
| # Compiler flags to enable all warnings & debug info | |
| CFLAGS = -Wall -Werror -g -O0 | |
| CFLAGS += -I$(NANOPB_DIR) | |
| # C source code files that are required | |
| CSRC = simple.c # The main program | |
| CSRC += simple.pb.c # The compiled protocol definition | |
| CSRC += $(NANOPB_DIR)/pb_encode.c # The nanopb encoder | |
| CSRC += $(NANOPB_DIR)/pb_decode.c # The nanopb decoder | |
| CSRC += $(NANOPB_DIR)/pb_common.c # The nanopb common parts | |
| # Build rule for the main program | |
| simple: $(CSRC) | |
| $(CC) $(CFLAGS) -osimple $(CSRC) | |
| # Build rule for the protocol | |
| simple.pb.c: simple.proto | |
| $(PROTOC) $(PROTOC_OPTS) --nanopb_out=. simple.proto | |