| Left: | ||
| Right: |
| LEFT | RIGHT |
|---|---|
| 1 Adblock Plus core | 1 Adblock Plus core |
| 2 ================= | 2 ================= |
| 3 | 3 |
| 4 This repository contains the generic Adblock Plus code that's shared between | 4 This repository contains the generic Adblock Plus code that's shared between |
| 5 platforms. This repository is not designed to be used directly, but instead to | 5 platforms. This repository is not designed to be used directly, but instead to |
| 6 serve as a dependency for `adblockplus`, `adblockpluschrome` and | 6 serve as a dependency for `adblockplus`, `adblockpluschrome` and |
| 7 `libadblockplus`. | 7 `libadblockplus`. |
| 8 | 8 |
| 9 Compiling C++ code | 9 Compiling C++ code |
| 10 ------------------ | 10 ------------------ |
| 11 | 11 |
| 12 ### Purpose | 12 ### Purpose |
| 13 | 13 |
| 14 In order to improve performance and memory usage, some of the code (located | 14 In order to improve performance and memory usage, some of the code (located |
| 15 inside the `compiled` directory) is written in C++ and compiled to JavaScript | 15 inside the `compiled` directory) is written in C++ and compiled to JavaScript |
| 16 via Empscripten. | 16 via Empscripten. |
| 17 | 17 |
| 18 ### Requirements | 18 ### Requirements |
| 19 | 19 |
| 20 * [Emscripten 1.37.3](https://github.com/kripken/emscripten) | 20 * [Emscripten 1.37.3](https://github.com/kripken/emscripten) |
| 21 * [Python 2.7 & 3](https://www.python.org) | 21 * [Python 2.7](https://www.python.org) |
|
Wladimir Palant
2017/12/14 10:57:01
Python 3 is a transitive dependency for Meson, we
hub
2017/12/15 17:44:55
Done.
| |
| 22 * [meson 0.43.0](https://www.mesonbuild.com) | 22 * [meson 0.40.0+](https://www.mesonbuild.com) |
| 23 * [ninja](https://www.ninja-build.org) | 23 * [ninja](https://www.ninja-build.org) |
| 24 | 24 |
| 25 Make sure that meson and ninja are in your PATH. | 25 Make sure that meson and ninja are in your PATH. |
| 26 | 26 |
| 27 ### Running Emscripten | 27 ### Running Emscripten |
| 28 | 28 |
| 29 After installing and configuring Emscripten you can setup the build | 29 After installing and configuring Emscripten you can setup the build |
| 30 with the following commands: | 30 with the following commands: |
| 31 | 31 |
| 32 meson build | 32 meson build |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 99 Linting | 99 Linting |
| 100 ------- | 100 ------- |
| 101 | 101 |
| 102 You can lint the code using [ESLint](http://eslint.org). | 102 You can lint the code using [ESLint](http://eslint.org). |
| 103 | 103 |
| 104 eslint *.js chrome lib test | 104 eslint *.js chrome lib test |
| 105 | 105 |
| 106 You will need to set up ESLint and our configuration first, see | 106 You will need to set up ESLint and our configuration first, see |
| 107 [eslint-config-eyeo](https://hg.adblockplus.org/codingtools/file/tip/eslint-conf ig-eyeo) | 107 [eslint-config-eyeo](https://hg.adblockplus.org/codingtools/file/tip/eslint-conf ig-eyeo) |
| 108 for more information. | 108 for more information. |
| LEFT | RIGHT |