docs: Atom Shell => Electron

This commit is contained in:
Cheng Zhao 2015-04-16 11:31:12 +08:00
parent d878bd33d7
commit d2682233fd
29 changed files with 132 additions and 130 deletions

View file

@ -1,13 +1,13 @@
# Build system overview
Atom Shell uses `gyp` for project generation, and `ninja` for building, project
Electron uses `gyp` for project generation, and `ninja` for building, project
configurations can be found in `.gyp` and `.gypi` files.
## Gyp files
Following `gyp` files contain the main rules of building Atom Shell:
Following `gyp` files contain the main rules of building Electron:
* `atom.gyp` defines how Atom Shell itself is built.
* `atom.gyp` defines how Electron itself is built.
* `common.gypi` adjusts the build configurations of Node to make it build
together with Chromium.
* `vendor/brightray/brightray.gyp` defines how `brightray` is built, and
@ -23,7 +23,7 @@ Chromium introduced the "component build", which builds each component as a
separate shared library, making linking very quick but sacrificing file size
and performance.
In Atom Shell we took a very similar approach: for `Debug` builds, the binary
In Electron we took a very similar approach: for `Debug` builds, the binary
will be linked to shared library version of Chromium's components to achieve
fast linking time; for `Release` builds, the binary will be linked to the static
library versions, so we can have the best possible binary size and performance.
@ -35,7 +35,7 @@ script. By default both static libraries and shared libraries will be
downloaded and the final size should be between 800MB and 2GB according to the
platform.
If you only want to build Atom Shell quickly for testing or development, you
If you only want to build Electron quickly for testing or development, you
can only download the shared library versions by passing the `--dev` parameter:
```bash
@ -45,20 +45,20 @@ $ ./script/build.py -c D
## Two-phrase project generation
Atom Shell links with different sets of libraries in `Release` and `Debug`
Electron links with different sets of libraries in `Release` and `Debug`
builds, however `gyp` doesn't support configuring different link settings for
different configurations.
To work around this Atom Shell uses a `gyp` variable
To work around this Electron uses a `gyp` variable
`libchromiumcontent_component` to control which link settings to use, and only
generates one target when running `gyp`.
## Target names
Unlike most projects that use `Release` and `Debug` as target names, Atom Shell
Unlike most projects that use `Release` and `Debug` as target names, Electron
uses `R` and `D` instead. This is because `gyp` randomly crashes if there is
only one `Release` or `Debug` build configuration is defined, and Atom Shell has
only one `Release` or `Debug` build configuration is defined, and Electron has
to only generate one target for one time as stated above.
This only affects developers, if you are only building Atom Shell for rebranding
This only affects developers, if you are only building Electron for rebranding
you are not affected.