code: def getUI_build_index(prog_name, args):
    
    programName = prog_name
    long_description = "Build an index for one or more files."
    short_description = long_description
  
    ui = CLI(programName, short_description, long_description)
    ui.minArgs = 0
    ui.maxArgs = -1
    ui.addOption(Option(short="o", long="output", argName="filename",
                        description="output to given file, else stdout",
                        required=False, type=str))
    ui.addOption(Option(short="t", long="type", argName="filename",
                        description="the type of the file. If missing, " +
                        "the script will try to guess the file type. " +
                        "Supported file types are: " +
                        ", ".join([f.name for f in FileType]),
                        required=False, type=str))
    ui.addOption(Option(short="v", long="verbose",
                        description="output additional messages to stderr " +
                                    "about run (default: " +
                                    str(DEFAULT_VERBOSITY) + ")",
                        default=DEFAULT_VERBOSITY, required=False))
    ui.addOption(Option(short="h", long="help",
                        description="show this help message ", special=True))
    ui.addOption(Option(short="u", long="test",
                        description="run unit tests ", special=True))
  
    ui.parseCommandLine(args)
    return ui
docs: build and return a UI object for the 'build' option.
  
    :param args: raw arguments to parse