Automatically build protobuf if they aren't there for the tests

Change-Id: If4d9a0dbd0fc8b47819fa5e90c5b8bd5a5fef01f
diff --git a/voltha/adapters/adtran_olt/test.mk b/voltha/adapters/adtran_olt/test.mk
index cb4ad1a..3a9c4a8 100644
--- a/voltha/adapters/adtran_olt/test.mk
+++ b/voltha/adapters/adtran_olt/test.mk
@@ -4,6 +4,14 @@
 VOLTHA_DIR         := $(dir $(patsubst %/,%,$(ADAPTERS_DIR)))
 PROJ_DIR           := $(VOLTHA_DIR)../
 
+OPENOLT_DIR        := $(ADAPTERS_DIR)openolt
+OPENOLT_PROTO      := $(wildcard $(OPENOLT_DIR)/protos/*.proto)
+OPENOLT_PB2        := $(patsubst %.proto,%_pb2.py,$(OPENOLT_PROTO))
+
+VOLTHA_PROTO      := $(wildcard $(VOLTHA_DIR)protos/*.proto)
+VOLTHA_PB2        := $(patsubst %.proto,%_pb2.py,$(VOLTHA_PROTO))
+
+
 VENVDIR=$(PROJ_DIR)venv-$(shell uname -s | tr '[:upper:]' '[:lower:]')
 TESTDIR=$(WORKING_DIR)test
 PYTHONPATH := $(PYTHONPATH):$(VOLTHA_DIR)protos/third_party;
@@ -31,6 +39,15 @@
 $(VENVDIR)/.built:
 	cd $(PROJ_DIR); make venv
 
+$(OPENOLT_PB2): %_pb2.py : %.proto
+	@echo !-- Making $(@) because $< changed ---
+	@cd $(OPENOLT_DIR); $(MAKE)
+
+$(VOLTHA_PB2): %_pb2.py : %.proto
+	@echo !-- Making $(@) because $< changed ---
+	@cd $(VOLTHA_DIR)/protos; $(MAKE) third_party build
+
 .PHONY: requirements
-requirements: create-venv
+requirements: create-venv $(OPENOLT_PB2) $(VOLTHA_PB2)
 	@$(IN_VENV) pip install --upgrade -r $(WORKING_DIR)test_requirements.txt
+
diff --git a/voltha/adapters/adtran_onu/test.mk b/voltha/adapters/adtran_onu/test.mk
index cb4ad1a..c4f6324 100644
--- a/voltha/adapters/adtran_onu/test.mk
+++ b/voltha/adapters/adtran_onu/test.mk
@@ -4,6 +4,13 @@
 VOLTHA_DIR         := $(dir $(patsubst %/,%,$(ADAPTERS_DIR)))
 PROJ_DIR           := $(VOLTHA_DIR)../
 
+OPENOLT_DIR        := $(ADAPTERS_DIR)openolt
+OPENOLT_PROTO      := $(wildcard $(OPENOLT_DIR)/protos/*.proto)
+OPENOLT_PB2        := $(patsubst %.proto,%_pb2.py,$(OPENOLT_PROTO))
+
+VOLTHA_PROTO      := $(wildcard $(VOLTHA_DIR)protos/*.proto)
+VOLTHA_PB2        := $(patsubst %.proto,%_pb2.py,$(VOLTHA_PROTO))
+
 VENVDIR=$(PROJ_DIR)venv-$(shell uname -s | tr '[:upper:]' '[:lower:]')
 TESTDIR=$(WORKING_DIR)test
 PYTHONPATH := $(PYTHONPATH):$(VOLTHA_DIR)protos/third_party;
@@ -31,6 +38,14 @@
 $(VENVDIR)/.built:
 	cd $(PROJ_DIR); make venv
 
+$(OPENOLT_PB2): %_pb2.py : %.proto
+	@echo !-- Making $(@) because $< changed ---
+	@cd $(OPENOLT_DIR); $(MAKE)
+
+$(VOLTHA_PB2): %_pb2.py : %.proto
+	@echo !-- Making $(@) because $< changed ---
+	@cd $(VOLTHA_DIR)/protos; $(MAKE) third_party build
+
 .PHONY: requirements
-requirements: create-venv
+requirements: create-venv $(OPENOLT_PB2) $(VOLTHA_PB2)
 	@$(IN_VENV) pip install --upgrade -r $(WORKING_DIR)test_requirements.txt