build: [gn] working on 32bit windows

This commit is contained in:
Jeremy Apthorp 2018-07-19 16:57:54 -07:00 committed by Jeremy Apthorp
parent a2ac31a4bf
commit 16b66db9c7
3 changed files with 18 additions and 0 deletions

View file

@ -65,7 +65,9 @@ class CrashReporterWin : public CrashReporter {
google_breakpad::CustomClientInfo custom_info_;
bool skip_system_crash_handler_ = false;
#ifdef _WIN64
bool code_range_registered_ = false;
#endif
std::unique_ptr<google_breakpad::ExceptionHandler> breakpad_;
DISALLOW_COPY_AND_ASSIGN(CrashReporterWin);

View file

@ -27,6 +27,7 @@ action("configure_node") {
"--prefix=",
"--config-out-dir=" + rebase_path(target_gen_dir),
"--no-run-gyp",
"--dest-cpu=$target_cpu",
]
if (is_component_build) {
args += [ "--shared" ]

View file

@ -69,6 +69,21 @@ $ ./out/Default/Electron.app/Contents/MacOS/Electron
$ ./out/Default/electron
```
### Cross-compiling
To compile for a platform that isn't the same as the one you're building on,
set the `target_cpu` GN argument. For example, to compile a windows x86 target
from an x64 host, specify `target_cpu = "x86"` in `gn args`.
```sh
$ gn gen out/Default-x86 --args='... target_cpu = "x86"'
```
Not all combinations of source and target CPU/OS are supported by Chromium.
Only cross-compiling Windows 32-bit from Windows 64-bit has been tested in
Electron. If you test other combinations and find them to work, please update
this document :)
## Tests
To run the tests, you'll first need to build the test modules against the