README
1 0. ENVIRONMENT SETUP (Common ANDROID and NON-ANDROID builds)
2
3 # Create Android lunch shell and add external toolchain
4
5 bash
6 . build/envsetup.sh
7 . device/google/contexthub/firmware/toolchain-setup.sh
8 lunch <your lunch option>
9
10 # First time you run toolchain-setup.sh it will download and install
11 # the external toolchain from linaro launchpad.
12 # Next time it will simply define environment wariables for it.
13
14
15 1. NON-ANDROID BUILD (unsupported)
16
17 1.1. to build any OS variant, run
18
19 make -C <variant_path>
20
21 # where <variant_path> is relative path to OS variant dir;
22 # or simply "cd <variant_path>" and run "make".
23 # for local variants, variant_path is variant/<variant_name>
24
25 1.2. to build nanoapp, run
26
27 make -C <nanapp_path>
28
29 # where <nanoapp_path> is relative path to nanoapp;
30 # or simply "cd <nanoapp_path>" and run "make".
31 # for local nanoapps, nanoapp_path is app/<app_name>
32
33
34 2. ANDROID BUILD
35
36 2.1 to build nanohub OS and all apps
37
38 # execute
39 make auxiliary -j24
40
41 2.2 Build Artifacts Location
42
43 # Artifacts will be found in
44 # $OUT/aux/$(AUX_OS_VARIANT)/$(AUX_OS)-$(AUX_ARCH)-$(AUX_CPU)/bin
45 # e.g. for nanohub OS on STM32 series MCU (ARM cortex m4 core) for Angler this will be in
46 # $OUT/aux/angler/nanohub-stm32-cortexm4/bin
47 # where $OUT is lunch shell environment variable
48
49 2.3 partial build or build without dependencies
50
51 # Any app or static library could be built in isolation with
52 mmm <path-to-module>
53
54 # or, for current path
55 mm
56
57 # Nanohub OS system image is only built with
58 m auxiliary
59