Initial commit - not ready yet
[wiki.git] / Build / Build.wti
1 h1. //print DEVICE_NAME// build
2
3 h2. Prerequisites
4
5 The following are required to build Replicant for the //print DEVICE_NAME//:
6 * [[BuildDependenciesInstallation|Build dependencies installation]]
7 * [[ReplicantSourceCode|Replicant //print DEVICE_REPLICANT_VERSION// source code]]
8
9 h2. Build
10
11 *There is no need to build as root*, building as a regular user should be preferred.
12
13 In the source tree root folder, run:
14 <pre>
15 source build/envsetup.sh
16 //ifeq DEVICE_NAME SDK
17 lunch sdk-eng
18 //else
19 lunch replicant_//print DEVICE_CODENAME//-userdebug
20 //endif
21 </pre>
22
23 Then, start the build:
24 <pre>
25 parallel_tasks=$(echo "$(grep 'processor' /proc/cpuinfo | wc -l ) + 1" | bc)
26 make -j$parallel_tasks //print BUILD_TARGET//
27 </pre>
28 The @-jn@ argument indicates the number of parallel tasks during the build (you can remove it from the command line to have only one task at a time).
29 @$parallel_tasks@ holds an optimized number of parallel tasks for your hardware. You may want to reduce this number if e.g. the computer runs out of RAM during the build.
30
31 h2. Produced binaries
32
33 The produced binaries are located at:
34 //ifeq DEVICE_NAME SDK
35 * @out/host/linux-x86/sdk/@
36 //else
37 * @out/target/product///print DEVICE_CODENAME///@ for the target
38 * @out/host/linux-x86/bin/@ for the host
39 //endif