build: General build refactoring

Add vars.mk for variable sharing across makefiles.
Stub and rename example YAML file and template.
  Content to be re-introduced as support is added.
Move generated C++ to a header file.
Add input YAML path option to configure.

Change-Id: Ia06e392e8b120b1e1d8614046064fa432a6f9e18
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/src/Makefile.am b/src/Makefile.am
index fcb79e0..3fc5554 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1,3 +1,5 @@
+include ${top_srcdir}/vars.mk
+
 AM_DEFAULT_SOURCE_EXT = .cpp
 AM_CPPFLAGS = -iquote ${top_srcdir}
 
@@ -6,8 +8,7 @@
 phosphor_dbus_monitor_SOURCES = \
 	functor.cpp \
 	main.cpp \
-	monitor.cpp \
-	generated.cpp
+	monitor.cpp
 phosphor_dbus_monitor_LDADD = \
 	$(SDBUSPLUS_LIBS) \
 	$(PHOSPHOR_LOGGING_LIBS)
@@ -15,13 +16,16 @@
 	$(SDBUSPLUS_CFLAGS) \
 	$(PHOSPHOR_LOGGING_CFLAGS)
 
-BUILT_SOURCES = generated.cpp
-CLEANFILES = generated.cpp
+BUILT_SOURCES = generated.hpp
+CLEANFILES = generated.hpp
 
-generated.cpp:
-	$(AM_V_GEN)$(PYTHON) ${top_srcdir}/src/pdmgen.py \
-		-t generated.mako.cpp \
-		-p "${srcdir}" \
+TEMPLATES = \
+	templates/generated.mako.hpp
+
+generated.hpp: $(PDMGEN) $(YAML_PATH) $(TEMPLATES)
+	$(AM_V_GEN)$(PYTHON) ${PDMGEN} \
+		-t generated.mako.hpp \
+		-p "${TEMPLATESEARCH}" \
 		-d ${srcdir}/example \
 		-o ${builddir}/$@ \
 		generate-cpp