#compdef _releng_tool releng-tool

function _releng_tool {
    local opts=(
        'clean'
        'distclean'
        'extract'
        'fetch'
        'init'
        'licenses'
        'mrproper'
        'patch'
    )

    _arguments -C \
        '--assets-dir[directory to hold cache/download directories]: :_files' \
        '--cache-dir[directory for distributed version control cache]: :_files' \
        '--debug[show debug-related messages]' \
        '--development[enables development mode]' \
        '--dl-dir[directory for download archives]: :_files' \
        {--force,-F}'[trigger a forced request]' \
        {--help,-h}'[show help]' \
        '--help-quirks[show available quirks]' \
        {--jobs,-j}'[numbers of jobs to handle]: ' \
        '--local-sources[enables local-sources mode]' \
        '--nocolorout[explicitly disable colorized output]' \
        '--out-dir[directory for output]: :_files' \
        '--root-dir[directory of the project to process]: :_files' \
        '--quirk[quirk to apply to a run]: ' \
        {--verbose,-V}'[show additional messages]' \
        '--version[print the version and exit]' \
        "1: :($opts)"
}

_releng_tool "$@"
