Skip to content

Latest commit

 

History

History
101 lines (63 loc) · 3.04 KB

README.md

File metadata and controls

101 lines (63 loc) · 3.04 KB

This is manifest project, for building Android OS as Xen guest. Based on android-mainline-11.0.0_r1 AOSP manifest.

Downloading the Source:

Please follow general rules/dependencies from : https://source.android.com/setup/build/downloading

Also install

sudo apt install bc

For downloading opensource projects use:

repo init -u https://github.com/xen-troops/android_manifest.git -m doma.xml -b android-11-master

For downloading opensource and internal projects (you need appropriate access rights) use:

repo init -u https://github.com/xen-troops/android_manifest.git -m doma.xml -b android-11-master -g all

And after init for both options (increase or decrease -jXXX depending on your bandwidth):

repo sync -c -j16

Establishing a Build Environment:

To have properly built graphic drivers you need to specify target SOC:

either H3 (r8a7795)

export TARGET_BOARD_PLATFORM=r8a7795

or M3 (r8a7796)

export TARGET_BOARD_PLATFORM=r8a7796

In order to properly build trusted applications you need to specify folder with python

export HOST_PYTHON=$(dirname $PYTHON)

Building with prebuilts:

In case DDK KM prebuilt:

export DDK_KM_PREBUILT_MODULE=/media/prebuilts/pvr-km/pvrsrvkm.ko
export TARGET_PREBUILT_KERNEL=/media/prebuilts/kernel/Image

In case of DDK KM source build, please copy DDK KM source code into:

$(ANDROID_ROOT)/vendor/imagination/rogue_km

In case DDK UM prebuilt:

export DDK_UM_PREBUILDS=/media/prebuilts/pvr-um

Select external VIS server or emulated vehicle HAL:

Regarding vehicle information, android can work in two modes:

  • connection to external VIS server
  • usage of internal emulated vehicle HAL

Mode is selected as build option and is set by environment variable XT_USE_VIS_SERVER. If XT_USE_VIS_SERVER is defined (value doesn't matter), then android will connect to external VIS server at address wwwivi. If XT_USE_VIS_SERVER is not defined (you may use export XT_USE_VIS_SERVER= to be sure), then android will be built with emulated vehicle HAL, and will not try to connect to external VIS server.

Build Android:

. build/envsetup.sh
lunch xenvm-userdebug
make -j$(grep -c ^processor /proc/cpuinfo)

Using own internal projects for full source build

You can use local_manifests to build standalone android using closed source projects, which points to an internal repo.

Create some manifest.xml file like:

<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote  name="some_local_remote" fetch="local fetch uri" revision="some local revision" />
<project path="vendor/imagination/rogue_um" name="some local pvr_um project name"  remote="some_local_remote" />
<project path="vendor/imagination/rogue_km" name="some local pvr_km project name"  remote="some_local_remote" />
<project path="prebuilts/imagination/metag/2.8" name="some local embedded_toolkit project name"  remote="some_local_remote" />
</manifest>

create .repo/local_manifests/ and copy into it newly created manifest.xml

Repo will fetch all internal projects with all other opensourece during sync.