{
  "name": "make",
  "options": [
    {
      "names": [
        "-j"
      ],
      "takes_arg": true,
      "arg": {
        "name": "number"
      }
    },
    {
      "names": [
        "--file",
        "-f",
        "--makefile"
      ],
      "description": "Read FILE as a makefile",
      "takes_arg": true,
      "arg": {
        "name": "file",
        "template": "filepaths"
      }
    },
    {
      "names": [
        "-C",
        "--directory"
      ],
      "description": "Change to DIRECTORY before doing anything",
      "takes_arg": true,
      "arg": {
        "name": "directory",
        "template": "folders"
      }
    },
    {
      "names": [
        "-B",
        "--always-make"
      ],
      "description": "Unconditionally make all targets",
      "takes_arg": true,
      "arg": {
        "name": "target"
      }
    },
    {
      "names": [
        "-e",
        "--environment-overrides"
      ],
      "description": "Environment variables override makefiles",
      "takes_arg": true,
      "arg": {
        "name": "target"
      }
    },
    {
      "names": [
        "-h",
        "--help"
      ],
      "description": "Print this message and exit"
    },
    {
      "names": [
        "-i",
        "--ignore-errors"
      ],
      "description": "Ignore errors from commands"
    },
    {
      "names": [
        "-k",
        "--keep-going"
      ],
      "description": "Keep going when some targets can't be made"
    },
    {
      "names": [
        "-L",
        "--check-symlink-times"
      ],
      "description": "Use the latest mtime between symlinks and target"
    },
    {
      "names": [
        "-p",
        "--print-data-base"
      ],
      "description": "Print make's internal database"
    },
    {
      "names": [
        "-q",
        "--question"
      ],
      "description": "Run no commands; exit status says if up to date"
    },
    {
      "names": [
        "-r",
        "--no-builtin-rules"
      ],
      "description": "Disable the built-in implicit rules"
    },
    {
      "names": [
        "-R",
        "--no-builtin-variables"
      ],
      "description": "Disable the built-in variable settings"
    },
    {
      "names": [
        "-t",
        "--touch"
      ],
      "description": "Touch targets instead of remaking them"
    },
    {
      "names": [
        "-v",
        "--version"
      ],
      "description": "Print the version number of make and exit"
    },
    {
      "names": [
        "-w",
        "--print-directory"
      ],
      "description": "Print the current directory"
    },
    {
      "names": [
        "-d"
      ],
      "description": "Print lots of debugging information"
    },
    {
      "names": [
        "--debug"
      ],
      "description": "Print various types of debugging information"
    },
    {
      "names": [
        "-I",
        "--include-dir"
      ],
      "description": "Search directory for included makefiles",
      "takes_arg": true,
      "arg": {
        "name": "directory",
        "template": "folders"
      }
    },
    {
      "names": [
        "-l",
        "--load-average"
      ],
      "description": "Don't start multiple jobs unless load is below N",
      "takes_arg": true,
      "arg": {
        "name": "N"
      }
    },
    {
      "names": [
        "-o",
        "--old-file"
      ],
      "description": "Consider file to be very old and don't remake it",
      "takes_arg": true,
      "arg": {
        "name": "file",
        "template": "filepaths"
      }
    },
    {
      "names": [
        "--no-print-directory"
      ],
      "description": "Turn off -w, even if it was turned on implicitly"
    },
    {
      "names": [
        "-W",
        "--what-if",
        "--new-file",
        "--assume-new"
      ],
      "description": "Consider file to be infinitely new",
      "takes_arg": true,
      "arg": {
        "name": "file",
        "template": "filepaths"
      }
    },
    {
      "names": [
        "--warn-undefined-variables"
      ],
      "description": "Warn when an undefined variable is referenced"
    },
    {
      "names": [
        "-N",
        "--Next-option"
      ],
      "description": "Turn on value of next option",
      "takes_arg": true,
      "arg": {
        "name": "option"
      }
    }
  ],
  "args": [
    {
      "name": "target"
    }
  ]
}
