commit | 39b96b6b0c4a1480f0ea81f032e720ad2b62d6c4 | [log] [tgz] |
---|---|---|
author | Surender Kodam <surenderk@google.com> | Mon Mar 28 16:15:57 2016 -0700 |
committer | Alex Vakulenko <avakulenko@google.com> | Mon Apr 04 18:31:56 2016 +0000 |
tree | b761a759d61b876500152162f67ca50d001289e6 | |
parent | 2fd3e553fbbb93eefb4d09e5f516d5931bb47802 [diff] |
create generic test device for multiple traits testing. As part of testing multiple traits using libweave API, creating a test_schema which can hold multiple traits, and these multiple traits will be used in one single test device, and this test device will be used in test cases for test libweave API. Change-Id: Ia68e8aa9d43b927f41c7961e62d8ab78c46a85c8 Reviewed-on: https://weave-review.googlesource.com/3068 Reviewed-by: Alex Vakulenko <avakulenko@google.com>
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.