id = "gcc" name = "gcc" description = "The GNU C compiler." homepage = "https://gcc.gnu.org" executables = ["gcc"] [commands] format = 1 label = "Compile C" description = "Compile or preprocess source files. Optimization, warning and -std options are not in the completion data and are left out." quality = "ai-draft" base = "fig:gcc" parser = { end_of_options = "--", interleave = "permute", long_equals = false, short_attached = true, short_bundles = false } [[commands.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/gcc.ts" license = "MIT" [[commands.field]] id = "sources" label = "Source files" type = "path" position = 0 multiple = true path = { kind = "file", role = "input" } sources = ["fig"] [[commands.field]] id = "output" label = "Output file" type = "path" option = ["-o"] path = { kind = "file", role = "output" } effect = "overwrite" sources = ["fig"] [[commands.field]] id = "compile_only" label = "Compile only (no link)" type = "boolean" option = ["-c"] sources = ["fig"] [[commands.field]] id = "assembly" label = "Emit assembly" type = "boolean" option = ["-S"] sources = ["fig"] [[commands.field]] id = "preprocess" label = "Preprocess only" type = "boolean" option = ["-E"] sources = ["fig"] [[commands.field]] id = "debug" label = "Debug info" type = "boolean" option = ["-g"] sources = ["fig"] [[commands.field]] id = "include_dir" label = "Include directories" type = "path" option = ["-I"] multiple = true path = { kind = "directory", role = "input" } sources = ["fig"] [[commands.field]] id = "lib_dir" label = "Library directories" type = "path" option = ["-L"] multiple = true path = { kind = "directory", role = "input" } sources = ["fig"] [[commands.field]] id = "define" label = "Macros" description = "NAME or NAME=VALUE." type = "string" option = ["-D"] multiple = true sources = ["fig"] [[commands.field]] id = "language" label = "Input language" type = "string" option = ["-x"] suggestions = [{ value = "c", label = "c" }, { value = "c++", label = "c++" }, { value = "assembler", label = "assembler" }, { value = "objective-c", label = "objective-c" }] sources = ["fig"] [[commands.field]] id = "no_warnings" label = "Suppress warnings" type = "boolean" option = ["-w"] sources = ["fig"] [[commands.field]] id = "verbose" label = "Verbose" type = "boolean" option = ["-v"] sources = ["fig"] [[commands.field]] id = "pipe" label = "Use pipes" type = "boolean" option = ["-pipe"] sources = ["fig"] [[commands.field]] id = "depfile" label = "Write dependency file (user headers)" type = "boolean" option = ["-MMD"] sources = ["fig"] [[commands.task]] id = "build" label = "Compile and link" fields = ["sources", "output", "debug", "include_dir", "define"] required = ["sources"] [[commands.task]] id = "object" label = "Compile to object file" fields = ["sources", "output", "compile_only", "debug", "include_dir", "define"] required = ["sources"] set = { compile_only = [true] } [[commands.group]] id = "basic" label = "Basic" fields = ["sources", "output", "compile_only", "debug", "include_dir", "define"] [[commands.group]] id = "advanced" label = "Advanced" fields = ["assembly", "preprocess", "lib_dir", "language", "no_warnings", "verbose", "pipe", "depfile"]