Commit faeb0aa9 authored by hbristow's avatar hbristow

Now using python ArgumentParser to parse command line arguments in preparation…

Now using python ArgumentParser to parse command line arguments in preparation for adding doc generation
parent c5ffd1fd
......@@ -122,8 +122,11 @@ if (NOT MEX_WORKS)
message(STATUS "Trying to generate Matlab code")
execute_process(
COMMAND ${PYTHON_EXECUTABLE}
${CMAKE_CURRENT_SOURCE_DIR}/generator/gen_matlab.py ${HDR_PARSER_PATH}
${CMAKE_CURRENT_SOURCE_DIR}/test/test_generator.hpp ${CMAKE_BINARY_DIR}/junk
${CMAKE_CURRENT_SOURCE_DIR}/generator/gen_matlab.py
--hdrparser ${HDR_PARSER_PATH}
--rstparser ${RST_PARSER_PATH}
--headers ${CMAKE_CURRENT_SOURCE_DIR}/test/test_generator.hpp
--outdir ${CMAKE_BINARY_DIR}/junk
ERROR_VARIABLE GEN_ERROR
OUTPUT_QUIET
)
......@@ -179,8 +182,11 @@ file(REMOVE ${GENERATE_PROXY} ${COMPILE_PROXY})
add_custom_command(
OUTPUT ${GENERATE_PROXY}
COMMAND ${PYTHON_EXECUTABLE}
${CMAKE_CURRENT_SOURCE_DIR}/generator/gen_matlab.py ${HDR_PARSER_PATH}
${opencv_hdrs} ${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_CURRENT_SOURCE_DIR}/generator/gen_matlab.py
--hdrparser ${HDR_PARSER_PATH}
--rstparser ${RST_PARSER_PATH}
--headers ${opencv_hdrs}
--outdir ${CMAKE_CURRENT_BINARY_DIR}
COMMAND ${CMAKE_COMMAND} -E touch ${GENERATE_PROXY}
COMMENT "Generating Matlab source files"
)
......
......@@ -96,19 +96,26 @@ class MatlabWrapperGenerator(object):
if __name__ == "__main__":
# add the hdr_parser to the path
# parse the input options
import sys, re, os, time
sys.path.append(sys.argv[1])
from argparse import ArgumentParser
parser = ArgumentParser()
parser.add_argument('--hdrparser')
parser.add_argument('--rstparser')
parser.add_argument('--headers', nargs='+')
parser.add_argument('--outdir')
args = parser.parse_args()
# add the hdr_parser and rst_parser modules to the path
sys.path.append(args.hdrparser)
sys.path.append(args.rstparser)
from string import Template
from hdr_parser import CppHeaderParser
from parse_tree import ParseTree, todict, constants
from filters import *
from jinja2 import Environment, FileSystemLoader
# get the IO from the command line arguments
input_files = sys.argv[2:-1]
output_dir = sys.argv[-1]
# create the generator
mwg = MatlabWrapperGenerator()
mwg.gen(input_files, output_dir)
mwg.gen(args.headers, args.outdir)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment