OLD | NEW |
1 Adblock Browser | 1 Adblock Browser |
2 =============== | 2 =============== |
3 | 3 |
4 The Adblock Plus browser, based on Firefox for Android. | 4 The Adblock Plus browser, based on Firefox for Android. |
5 | 5 |
6 Building | 6 Building |
7 -------- | 7 -------- |
8 | 8 |
9 First ensure that all dependencies are up to date by calling: | 9 First ensure that all dependencies are up to date by calling: |
10 | 10 |
(...skipping 14 matching lines...) Expand all Loading... |
25 (Follow-up issue: https://issues.adblockplus.org/ticket/2490) | 25 (Follow-up issue: https://issues.adblockplus.org/ticket/2490) |
26 | 26 |
27 Creating a multilocale build | 27 Creating a multilocale build |
28 ---------------------------- | 28 ---------------------------- |
29 | 29 |
30 ### Preparations ### | 30 ### Preparations ### |
31 | 31 |
32 1. Create a folder outside of the Adblock Browser repo, e.g `abb-multi` | 32 1. Create a folder outside of the Adblock Browser repo, e.g `abb-multi` |
33 2. Change into `abb-multi` and clone mozharness via: | 33 2. Change into `abb-multi` and clone mozharness via: |
34 | 34 |
35 hg clone http://hg.mozilla.org/build/mozharness -r FENNEC_39_0_1_RELEASE | 35 hg clone http://hg.mozilla.org/build/mozharness -r FENNEC_40_0b8_RELEASE |
36 | 36 |
37 3. Symlink the adblockbrowser repo into `abb-multi`, e.g.: | 37 3. Symlink the adblockbrowser repo into `abb-multi`, e.g.: |
38 | 38 |
39 ln -s ../adblockbrowser adblockbrowser | 39 ln -s ../adblockbrowser adblockbrowser |
40 | 40 |
41 4. Copy your `mozconfig` from `adblockbrowser` to `abb-multi`, e.g.: | 41 4. Copy your `mozconfig` from `adblockbrowser` to `abb-multi`, e.g.: |
42 | 42 |
43 cp adblockbrowser/mozconfig ./mozconfig | 43 cp adblockbrowser/mozconfig ./mozconfig |
44 | 44 |
45 5. Create a copy of the build configuration, e.g.: | 45 5. Create a copy of the build configuration, e.g.: |
(...skipping 11 matching lines...) Expand all Loading... |
57 * If your `mozconfig` is not called `mozconfig`, change `MOZCONFIG` | 57 * If your `mozconfig` is not called `mozconfig`, change `MOZCONFIG` |
58 * **Remove the repository pulling part** from `config`. | 58 * **Remove the repository pulling part** from `config`. |
59 The code to remove looks like this: | 59 The code to remove looks like this: |
60 | 60 |
61 "repos": [{ | 61 "repos": [{ |
62 "repo": "https://hg.mozilla.org/%s" % REPO_PATH, | 62 "repo": "https://hg.mozilla.org/%s" % REPO_PATH, |
63 "tag": "default", | 63 "tag": "default", |
64 "dest": BUILD_DIR, | 64 "dest": BUILD_DIR, |
65 }], | 65 }], |
66 | 66 |
67 * Change `"hg_l10n_tag"` in `config` from `default` to `FENNEC_39_0_1_RELEASE` | 67 * Change `"hg_l10n_tag"` in `config` from `default` to `FENNEC_40_0_RELEASE` |
68 * You might want to remove the `"backup-objdir"` build step if you do | 68 * You might want to remove the `"backup-objdir"` build step if you do |
69 not want your objdir to be backed up. Keep in mind that you then need to | 69 not want your objdir to be backed up. Keep in mind that you then need to |
70 clobber for a single-locale build. | 70 clobber for a single-locale build. |
71 | 71 |
72 An example configuration could look like this: | 72 An example configuration could look like this: |
73 | 73 |
74 import os | 74 import os |
75 # The name of the directory we'll pull our source into. | 75 # The name of the directory we'll pull our source into. |
76 BUILD_DIR = "adblockbrowser" | 76 BUILD_DIR = "adblockbrowser" |
77 # This is everything that comes after https://hg.mozilla.org/ | 77 # This is everything that comes after https://hg.mozilla.org/ |
(...skipping 16 matching lines...) Expand all Loading... |
94 "log_name": "multilocale", | 94 "log_name": "multilocale", |
95 "objdir": OBJDIR, | 95 "objdir": OBJDIR, |
96 "locales_file": "%s/%s/locales/maemo-locales" % (BUILD_DIR, ANDROID_DIR)
, | 96 "locales_file": "%s/%s/locales/maemo-locales" % (BUILD_DIR, ANDROID_DIR)
, |
97 "locales_dir": "%s/locales" % ANDROID_DIR, | 97 "locales_dir": "%s/locales" % ANDROID_DIR, |
98 "ignore_locales": ["en-US", "multi"], | 98 "ignore_locales": ["en-US", "multi"], |
99 "l10n_repos": [{ | 99 "l10n_repos": [{ |
100 "repo": "https://hg.mozilla.org/build/compare-locales", | 100 "repo": "https://hg.mozilla.org/build/compare-locales", |
101 "tag": "RELEASE_AUTOMATION" | 101 "tag": "RELEASE_AUTOMATION" |
102 }], | 102 }], |
103 "hg_l10n_base": "https://hg.mozilla.org/%s" % L10N_REPO_PATH, | 103 "hg_l10n_base": "https://hg.mozilla.org/%s" % L10N_REPO_PATH, |
104 "hg_l10n_tag": "FENNEC_39_0_1_RELEASE", | 104 "hg_l10n_tag": "FENNEC_40_0_RELEASE", |
105 "l10n_dir": "l10n", | 105 "l10n_dir": "l10n", |
106 "merge_locales": True, | 106 "merge_locales": True, |
107 "mozilla_dir": BUILD_DIR, | 107 "mozilla_dir": BUILD_DIR, |
108 "mozconfig": MOZCONFIG, | 108 "mozconfig": MOZCONFIG, |
109 "default_actions": [ | 109 "default_actions": [ |
110 "pull-locale-source", | 110 "pull-locale-source", |
111 "build", | 111 "build", |
112 "package-en-US", | 112 "package-en-US", |
113 "restore-objdir", | 113 "restore-objdir", |
114 "add-locales", | 114 "add-locales", |
115 "package-multi", | 115 "package-multi", |
116 "summary", | 116 "summary", |
117 ], | 117 ], |
118 } | 118 } |
119 | 119 |
120 ### Building ### | 120 ### Building ### |
121 | 121 |
122 For performing the multilocale build, invoke | 122 For performing the multilocale build, invoke |
123 | 123 |
124 ./mozharness/scripts/multil10n.py --cfg abb-multi-cfg.py | 124 ./mozharness/scripts/multil10n.py --cfg abb-multi-cfg.py |
125 | 125 |
126 from inside `abb-multi`. The resulting build is located in | 126 from inside `abb-multi`. The resulting build is located in |
127 `BUILD_DIR/OBJ_DIR/dist/` | 127 `BUILD_DIR/OBJ_DIR/dist/` |
128 | 128 |
129 [1]: https://wiki.mozilla.org/Mobile/Fennec/Android | 129 [1]: https://wiki.mozilla.org/Mobile/Fennec/Android |
OLD | NEW |