aboutsummaryrefslogtreecommitdiffhomepage
path: root/third_party/nanopb/examples/simple/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/nanopb/examples/simple/Makefile')
-rw-r--r--third_party/nanopb/examples/simple/Makefile22
1 files changed, 22 insertions, 0 deletions
diff --git a/third_party/nanopb/examples/simple/Makefile b/third_party/nanopb/examples/simple/Makefile
new file mode 100644
index 0000000000..970a865009
--- /dev/null
+++ b/third_party/nanopb/examples/simple/Makefile
@@ -0,0 +1,22 @@
+# 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
+