Software:GYP
Original author(s) | Mark Mentovai |
---|---|
Developer(s) | Chromium.org |
Written in | Python |
Operating system | macOS, Linux, Solaris, FreeBSD, OpenBSD, Windows |
Type | Build automation programming |
License | BSD license |
GYP (generate your projects) is an obsolete build automation tool created in 2011 by Google.[1] Its purpose was to generate native IDE project files (such as Visual Studio and Xcode) for building the Chromium web browser and is licensed as open source software using the BSD software license.
The functionality of GYP is similar to the CMake build tool. GYP processes a file that contains a JSON dictionary[2] in order to generate one or more target project make files. The single source .GYP file is generic while the target files are specific to each targeted build tool.
In 2016, the Chromium project replaced GYP with GN, a tool that generates ninja builds. The switch to GN resulted in a 20x speedup for their use case.[3][4] Other projects that migrated from GYP to GN include the V8 Javascript engine,[5] WebRTC[6] and Dart.[7]
Software projects that are still built using GYP include Node.js[8] and Telegram.[9]
See also
References
- ↑ "GitHub - chromium/gyp: GYP is a Meta-Build system: a build system that generates other build systems." (in en). https://github.com/chromium/gyp.
- ↑ "Gyp Make file dictionary". GYP user documentation. https://gyp.gsrc.io/docs/UserDocumentation.md.
- ↑ https://chromium.googlesource.com/chromium/src/tools/gn/+/48062805e19b4697c5fbd926dc649c78b6aaa138/README.md; new version
- ↑ "GN build configuration". https://www.chromium.org/developers/gn-build-configuration.
- ↑ Bynens, Mathias (2019-08-27). "Building V8 with GN". https://v8.dev/docs/build-gn.
- ↑ Issue 3441: Convert WebRTC GYP files to GN
- ↑ "Dart". 12 May 2022. https://github.com/dart-lang/sdk/blob/master/BUILD.gn.
- ↑ Schlueter, Isaac Z (25 June 2012). "Announcing Node 0.8". the Node.js official blog. https://nodejs.org/en/blog/release/v0.8.0.
- ↑ "Telegram Desktop – Official Messenger: Third Party components". https://github.com/telegramdesktop/tdesktop/tree/master#third-party.
External links