GN is a meta-build system that generates NinjaBuild files. It's meant to be faster and simpler than GYP. It outputs only Ninja build files.
gn check
and the visibility
, public_deps
, and data_deps
options for some examples).as of 8 Feb 2015:
Chrome and most of the major test suites link on Linux and ChromeOS. There's probably <1000 objects left to build, in a few test suites and a bunch of utillities and helper binaries. We will probably have everything converted in another couple weeks.
Chrome also links on Android and Windows, and bringing up the remaining test suites should be mostly straightforward. There's some work left to enable NaCl on Windows but it should also be straightforward.
Mac and iOS have not progressed much as attention has been focused on Linux and Windows; we still need support for bundles and frameworks before it can get to parity w/ the other platforms.
as of 8 Feb 2015:
We're currently shooting for having the main developer configurations working and usable by the end of March 2015. There will probably be a fair amount of verification of flags, bug fixes, etc over the next couple months, but hopefully we will be flipping configurations from GYP to GN throughout Q2, targeting having everything done by the end of Q2.
Ideally we're done when all of the GYP files have been deleted from Chromium and no one misses them.
We will be “mostly” done when the following are true:
The difference between “mostly done” and “done” exists to cover any issues we haven't yet identified :)
We do not currently plan to support full native XCode or Visual Studio generation from GN. It is theoretically possible to support such things, so we would at least look at patches adding the functionality.
Check to see if your targets build under GN yet. If they don't, volunteer to help convert them!
17 Nov 2014. We are updating the stuff we use to track progress. Watch this space and chromium-dev@ for more info!.
Read these links:
gn help
documentation.