crosswalk_development
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| crosswalk_development [2016/10/24 20:04] – [From Crosswalk project] kalaschnikow | crosswalk_development [2018/04/23 15:57] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== Crosswalk development ====== | ||
| + | |||
| + | Here is described only development OF Crosswalk and NOT WITH Crosswalk. In other words: how do I build and develop Crosswalk package. | ||
| + | |||
| + | ===== Helpful paths ===== | ||
| + | |||
| + | / | ||
| + | |||
| + | / | ||
| + | |||
| + | ===== Helpful reading ===== | ||
| + | |||
| + | ==== From Crosswalk project ==== | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | [[https:// | ||
| + | ==== From Chromium project ==== | ||
| + | |||
| + | [[http:// | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | [[http:// | ||
| + | |||
| + | ==== Misc ==== | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | ===== Fetching sources ===== | ||
| + | |||
| + | The fetching procedure is described in [[https:// | ||
| + | |||
| + | Fetch depot_tools: | ||
| + | |||
| + | <code bash> | ||
| + | git clone https:// | ||
| + | </ | ||
| + | |||
| + | Add the path of depot_tools to PATH environment variable: | ||
| + | |||
| + | <code bash> | ||
| + | export PATH=$PATH:/ | ||
| + | </ | ||
| + | |||
| + | |||
| + | |||
| + | After that go to an empty directory, where the source should be downloaded and fetch chromium for android: | ||
| + | |||
| + | <code bash> | ||
| + | fetch android | ||
| + | </ | ||
| + | |||
| + | ('' | ||
| + | |||
| + | |||
| + | If you are on linux and fetching the code for the first time, then you’ll need to run: | ||
| + | |||
| + | <code bash> | ||
| + | cd src && ./ | ||
| + | </ | ||
| + | |||
| + | And finally: | ||
| + | |||
| + | <code bash> | ||
| + | gclient sync | ||
| + | </ | ||
| + | |||
| + | This will pull all dependencies of the Chromium src checkout. You will need to run this any time you update the main src checkout, including when you switch branches. | ||
| + | |||
| + | |||
| + | ===== Crosswalk 23 and later. GN setup ===== | ||
| + | |||
| + | All things after the line were not done by me. Currently it is simply a " | ||
| + | |||
| + | ---- | ||
| + | |||
| + | The following is copied from [[https:// | ||
| + | |||
| + | |||
| + | In order to build Crosswalk, you need to have at least two lines in your settings to pull some default variables we set: | ||
| + | |||
| + | <code bash> | ||
| + | # important: WITH ' | ||
| + | cd / | ||
| + | gn args out/Default | ||
| + | </ | ||
| + | A text editor will be shown, where you must add the following line: | ||
| + | |||
| + | <code bash> | ||
| + | import("// | ||
| + | target_os = " | ||
| + | </ | ||
| + | |||
| + | You can add other settings after this statement, such as is_debug = false for a release build or target_arch = " | ||
| + | |||
| + | Once you have done this once, you can later call gn gen out/Default to just regenerate the ninja files based on your existing settings if you need to (most of the time, this will be done automatically for you when building). | ||
| + | |||
| + | See Chromium' | ||
| + | |||
| + | |||
| + | ===== Building Crosswalk ===== | ||
| + | |||
| + | Now we can build Crosswalk: | ||
| + | |||
| + | <code bash> | ||
| + | cd C: | ||
| + | ninja -C YOUR-BUILD-DIR xwalk | ||
| + | </ | ||
| + | |||
| + | YOUR-BUILD-DIR can be freely choosen, for example: " | ||
| + | |||
| + | |||
| + | ===== Changed files ===== | ||
| + | |||
| + | Because of my wrong configuration (clang was enabled), so some files could not be compiled. This files were changed by me: | ||
| + | |||
| + | / | ||
| + | / | ||
| + | / | ||
| + | / | ||
| + | / | ||
| + | |||
| + | |||
| + | |||
| + | <code bash> | ||
| + | </ | ||
| + | |||
| + | |||
