---
name: "gyp"
section: "1"
platform: "linux"
package: "gyp"
version: "0.16.2-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/gyp"
---

# gyp(1)

cross-platform makefile generator for Chromium

## NAME

gyp - cross-platform makefile generator for Chromium

## SYNOPSIS

*gyp* \[options\] \[build\_file...\]

## DESCRIPTION

Uses the specified build files to generate build scripts or project files in the current platform’s native format. If no build file is specified, all files in the current directory with a .gyp suffix are used.

## OPTIONS

\-D\<variable\>=\<value\>

Provide a default value for the given variable. This supplements settings from the *GYP\_DEFINES* environment variable, which should be a space-separated list of \<variable\>=\<value\> pairs.

\-f\<format\>\[(,\<format\>)...\], --format=\<format\>\[(,\<format\>)...\]

Generate output in the formats listed. Valid formats include make (GNU makefile), xcode (Xcode project file), msvs (Visual Studio project file), scons (SCons rule set), and gypd (*gyp* input, for debugging).

Defaults to the value of the *GYP\_GENERATORS* environment variable, which should be a comma-separated list of formats, or the platform’s native format if unset (*xcode* for Mac OS X, *msvs* for Windows, including Cygwin, *make* for other Unix).

\-I\<path\>, --include=\<path\>

Implicitly include the contents of the *\<path\>* file in all loaded .gyp files.

- \--depth=\<path\>

  For Chromium, the gyp "depth" variable should always be a relative path to Chromium’s top-level src directory. This option allows one to specify a path the DEPTH variable should be set relative to.

  Defaults to the first directory named src found as an ancestor of one of the build files passed on the command line.

\-d\<debug mode\>, --debug=\<debug mode\>

Turn on debugging output. Valid debugging modes include "general" to list options used, "variables" to trace variable expansion, and "includes" to trace build file include directives.

\-S\<suffix\>, --suffix=\<suffix\>

Insert the specified string in the names of generated files before the standard extension. For example, with the *make* backend and a suffix of ".foo", *gyp* will write the main makefile to Makefile.foo and target-specific snippets to target.foo.mk.

\-G\<flag\>=\<value\>

Set a "generator flag", which is an option specific to the particular output format. All generator flags have names beginning with the name of the output format. This supplements the *GYP\_GENERATOR\_FLAGS* environment variable, which should be a space-separated list of \<flag\>=\<value\> pairs.

- \--generator-output=\<dir\>

  Write the generated build files under the \<dir\> directory and adjust paths accordingly. This allows building in a separate directory from the source files.

  This overrides the *GYP\_GENERATOR\_OUTPUT* environment variable.

- \--ignore-environment

  Do not read options from environment variables.

- \--check

  Take extra time to verify the syntax of each *build\_file*.

- \--parallel

  Use multiprocessing for speed (experimental).

- \--toplevel-dir=\<dir\>

  Directory to use as the root of the source tree.

- \--build=\<configs\>

  Configuration for build after project generation.

- \--no-circular-check

  Disable the check for circular relationships between .gyp files. These relationships should not exist, but they’ve only been observed to be harmful with the Xcode output format. Chromium’s .gyp files currently have some circular relationships on non-Mac platforms, so this option allows the strict behavior to be used on Macs and the lenient behavior to be used elsewhere.

  This option is likely to be removed once all circular relationships in Chromium are eliminated.

## ENVIRONMENT

GYP\_DEFINES, GYP\_GENERATORS, GYP\_GENERATOR\_FLAGS, GYP\_GENERATOR\_OUTPUT

See the -D, --format, -G, and --generator-output options.

## FILES

\~/.gyp/include.gypi

Implicitly included before anything else in every .gyp file.

## SEE ALSO

**qmake**(1), [**cmake**(1)](/cmake/1.md)
