summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorBrad Bishop <bradleyb@fuzziesquirrel.com>2017-05-15 17:09:04 -0400
committerBrad Bishop <bradleyb@fuzziesquirrel.com>2017-05-22 22:55:54 -0400
commite3a01af49b01b870dd7739bf60e7be4621754c5a (patch)
tree042405ecac4781e8921456322a99305d3fa9b6d8 /src
parent34a7acdf8ef1a72586ae5d924edd4cd514c541da (diff)
downloadphosphor-dbus-monitor-e3a01af49b01b870dd7739bf60e7be4621754c5a.tar.gz
phosphor-dbus-monitor-e3a01af49b01b870dd7739bf60e7be4621754c5a.zip
pdmgen: Update script options
Add an option for specifying an alternate template for testcases. Update the output option to include the desired output filename as well as the directory. Add an option for specifying the mako template search path. Change-Id: I88634fee193409b25988eb1e7d7680aa866cc2e9 Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Diffstat (limited to 'src')
-rw-r--r--src/Makefile.am7
-rwxr-xr-xsrc/pdmgen.py24
2 files changed, 21 insertions, 10 deletions
diff --git a/src/Makefile.am b/src/Makefile.am
index 6afb7b9..fcb79e0 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -19,4 +19,9 @@ BUILT_SOURCES = generated.cpp
CLEANFILES = generated.cpp
generated.cpp:
- $(AM_V_GEN)$(PYTHON) ${srcdir}/pdmgen.py generate-cpp -d ${srcdir}/example -o ${builddir}
+ $(AM_V_GEN)$(PYTHON) ${top_srcdir}/src/pdmgen.py \
+ -t generated.mako.cpp \
+ -p "${srcdir}" \
+ -d ${srcdir}/example \
+ -o ${builddir}/$@ \
+ generate-cpp
diff --git a/src/pdmgen.py b/src/pdmgen.py
index 9b5cc29..1ff5c51 100755
--- a/src/pdmgen.py
+++ b/src/pdmgen.py
@@ -61,13 +61,11 @@ class Everything(Renderer):
def generate_cpp(self, loader):
'''Render the template with the provided data.'''
- with open(os.path.join(
- args.output_dir,
- 'generated.cpp'), 'w') as fd:
+ with open(args.output, 'w') as fd:
fd.write(
self.render(
loader,
- 'generated.mako.cpp',
+ args.template,
events={},
indent=Indent()))
@@ -82,9 +80,17 @@ if __name__ == '__main__':
'scanner and code generator.')
parser.add_argument(
- "-o", "--outdir", dest="output_dir",
- default=os.path.abspath('.'),
- help="Output directory for source files generated")
+ "-o", "--out", dest="output",
+ default='generated.cpp',
+ help="Generated output file name and path.")
+ parser.add_argument(
+ '-t', '--template', dest='template',
+ default='generated.mako.cpp',
+ help='The top level template to render.')
+ parser.add_argument(
+ '-p', '--template-path', dest='template_search',
+ default=script_dir,
+ help='The space delimited mako template search path.')
parser.add_argument(
'-d', '--dir', dest='inputdir',
default=os.path.join(script_dir, 'example'),
@@ -98,11 +104,11 @@ if __name__ == '__main__':
if sys.version_info < (3, 0):
lookup = mako.lookup.TemplateLookup(
- directories=[script_dir],
+ directories=args.template_search.split(),
disable_unicode=True)
else:
lookup = mako.lookup.TemplateLookup(
- directories=[script_dir])
+ directories=args.template_search.split())
function = getattr(
Everything.load(args),
OpenPOWER on IntegriCloud