blob: 257cfcb41fd5e53e79804bb50aa9f70e35fa7ce6 [file] [log] [blame] [view]
This repository contains the network service implementation for Mojo.
This repository uses gclient to manage dependencies so to work with it follow
these instructions instead of cloning the repo directly:
1. Install
[depot_tools](https://www.chromium.org/developers/how-tos/install-depot-tools)
and add it to your `PATH`.
2. Make a directory for monet and add a `.gclient` file:
```
$ mkdir monet
$ cd monet
$ cat <<EOF > .gclient
solutions = [
{
u'managed': False,
u'name': u'src',
u'url': u'https://github.com/domokit/monet.git',
u'custom_deps': {},
u'deps_file': u'DEPS',
u'safesync_url': u''}
]
target_os = [u'android']
EOF
```
3. Use gclient to pull down the monet repository and dependencies. This will
create a directory under monet called `src` containing the main repository.
```
$ gclient sync
```
4. Install the android SDK.
```
$ cd src
$ ./build/install-android-sdks.sh
```
5. Build and test using the `claude.py` helper script.
```
$ ./claude.py gn
$ ./claude.py build
$ ./claude.py test
```
6. Upload patches for review.
```
$ git checkout -b my_branch
(make changes)
$ git commit -m "What this patch does"
$ git cl upload
```
7. Land patches (after you get an LGTM).
```
$ git cl land
```
8. Make a Release build and test it using the `claude.py` helper script (clobber
for paranoia's sake).
```
$ rm -rf out/android_Release/ out/Release/
$ ./claude.py gn --release
$ ./claude.py build --release
$ ./claude.py test --release
```
9. Upload binary artifacts to Google Cloud storage.
```
$ ./claude.py upload --release
```
The code in [//net](net/) is the code from
[https://chromium.googlesource.com/chromium/src/net/](https://chromium.googlesource.com/chromium/src/net/)
at commit 79dc59ac7602413181079ecb463873e29a1d7d0a with `net_patch.diff`
applied. Similarly for the code in [//crypto](crypto/).