commit | 9fd3adb463ad97dfb41f2265e8836af32a37d2c2 | [log] [tgz] |
---|---|---|
author | Alex Vakulenko <avakulenko@google.com> | Fri Apr 01 09:49:22 2016 -0700 |
committer | Alex Vakulenko <avakulenko@google.com> | Fri Apr 01 09:51:09 2016 -0700 |
tree | 5329c96cd2853d914b3f37a059a359eb3bba525c | |
parent | d5cf72a7a1de0e785c295b63dd2446b34399a935 [diff] | |
parent | dcc0dca657396fdc57a1f4d7ee1fca66f059cb1e [diff] |
Merge remote-tracking branch 'weave/master' into 'weave/aosp-master' This merge includes the following commits: dcc0dca libweave: Convert the blacklist trait into a standard one 5fe0ac0 examples: refactor README file 3127cb3 Tweak the README.md with respect to the repo subdirectories. 38a2aef libweave: Remove release() calls on scoped_ptr bf79a9e libweave: Port base/ changes from Chromium project b9bbdc6 libweave: Fix compile errors on Chrome OS 5c2870f libevhtp: build checked out copy 3e4d883 add integrated cross-compile & qemu support 7fb7903 examples/daemon/ledflasher: switch to onOff 0011064 readme: add more tips/links d70a965 gtest/gmock: build checked out copy 8bf4757 Fail setup/start if device already registered cd7a3a2 Add HTTPS port into TXT record 5ddd991 Return 'component' in command JSON 00180aa Avoid Revocation list overflow b506696 Bound j2000 timestamps into [0, <int32_t>::max()] interval e733c38 Take into account scope from /privet/v3/auth call 8b897af examples/daemon: fix ledflasher param names 978e712 Implement local_discovery_enabled setting e4b8ccf Remove ObserverList from cloud delegate 1c6837f Remove CloudDelegate::Observer::OnDeviceInfoChanged 63feef5 Fixed issues configuring devices with date before 2000. 86e8f63 Update READMEs to reflect cloud_id name in Cloud Services for deviceId Added git add <files> in README for Making Changes 80c65d2 VERISON: Initial commit on master - 1.4.1 98af48b Update macaroon lib fafbc5d Insert the description of the change. 5e94dc8 Applied clang-format b741d64 Fix crash when device in access point mode 0d3062e Implement minimalRole for state definitions c7fab18 Update _accessRevocationList trait b18bead Fixes to event_http_server for examples a07bbc7 Add provider::Wifi::GetConnectedSsid c96ee4e examples/lock: fix lock trait f7bfb6a examples/speaker: fix volume trait 2419a2a Update local auth info if server side information does not match b7e0996 Simplify few comparison helpers 497559b Moved previous comment to README file Change-Id: Ibd3ca55fb07b816b60489e458f5e905d260c683f
libWeave is the library with device side implementation of Weave protocol.
Sources are located in git repository at https://weave.googlesource.com/weave/libweave/
Make sure you have a bin/ directory in your home directory and that it is included in your path:
mkdir ~/bin PATH=~/bin:$PATH
Download the Repo tool and ensure that it is executable:
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo chmod a+x ~/bin/repo
mkdir ~/weave cd ~/weave repo init -u https://weave.googlesource.com/weave/manifest repo sync
This checks out libweave and its dependencies into the ~/weave directory.
Path | Description |
---|---|
include/ | Includes to be used by device code |
src/ | Implementation sources |
examples/ | Example of device code |
third_party/ | Dependencies |
Makefile, *.mk files | Build files |
sudo apt-get update sudo apt-get install \ autoconf \ automake \ binutils \ g++ \ hostapd \ libavahi-client-dev \ libcurl4-openssl-dev \ libevent-dev \ libexpat1-dev \ libnl-3-dev \ libnl-route-3-dev \ libssl-dev \ libtool
From the libweave
directory:
The make --jobs/-j
flag is encouraged, to speed up build time. For example
make -j
which happens to be the same as
make all -j
make out/Debug/libweave.so
make all-examples
See the examples README for details.
The build supports transparently downloading & using a few cross-compilers. Just add cross-<arch>
to the command line in addition to the target you want to actually build.
This will cross-compile for an armv7 (hard float) target:
make cross-arm all-libs
This will cross-compile for a mips (little endian) target:
make cross-mipsel all-libs
make test make export-test
or
make testall
The build supports using qemu to run non-native tests.
This will run armv7 tests through qemu:
make cross-arm testall
The Android Developing site has a lot of good tips for working with git and repo in general. The tips below are meant as a quick cheat sheet rather than diving deep into relevant topics.
Make sure to have correct user in local or global config e.g.:
git config --local user.name "User Name" git config --local user.email user.name@example.com
repo start <branch name> .
git commit -a -v
repo upload .
Go to the url from the output of repo upload
and add reviewers.