Android/Building: Difference between revisions

From OLPC
Jump to navigation Jump to search
Line 45: Line 45:
|[http://dev.laptop.org/git/users/ben/android_frameworks_base/log/?h=android-4.3.1-xo4 git repository]
|[http://dev.laptop.org/git/users/ben/android_frameworks_base/log/?h=android-4.3.1-xo4 git repository]
|- align="center"
|- align="center"
|<div style="text-align: left; direction: ltr; margin-left: 1em;">frameworks/av</div>
|frameworks/av
|[http://dev.laptop.org/git/users/ben/android_frameworks_av/log/?h=android-4.3.1-xo4 git repository]
|[http://dev.laptop.org/git/users/ben/android_frameworks_av/log/?h=android-4.3.1-xo4 git repository]
|- align="center"
|- align="center"
|frameworks/native
|<div style="text-align: left; direction: ltr; margin-left: 1em;">frameworks/native</div>
|[http://dev.laptop.org/git/users/ben/android_frameworks_native/log/?h=android-4.3.1-xo4 git repository]
|[http://dev.laptop.org/git/users/ben/android_frameworks_native/log/?h=android-4.3.1-xo4 git repository]
|- align="center"
|- align="center"
|<div style="text-align: left; direction: ltr; margin-left: 1em;">system/core</div>
|system/core
|[http://dev.laptop.org/git/users/ben/android_system_core/log/?h=android-4.3.1-xo4 git repository]
|[http://dev.laptop.org/git/users/ben/android_system_core/log/?h=android-4.3.1-xo4 git repository]
|- align="center"
|- align="center"
|hardware/libhardware
|<div style="text-align: left; direction: ltr; margin-left: 1em;">hardware/libhardware</div>
|[http://dev.laptop.org/git/users/ben/android_hardware_libhardware/log/?h=android-4.3.1-xo4 git repository]
|[http://dev.laptop.org/git/users/ben/android_hardware_libhardware/log/?h=android-4.3.1-xo4 git repository]
|- align="center"
|- align="center"
|hardware/libhardware_legacy
|<div style="text-align: left; direction: ltr; margin-left: 1em;">hardware/libhardware_legacy</div>
|[http://dev.laptop.org/git/users/ben/android_hardware_libhardware_legacy/log/?h=android-4.3.1-xo4 git repository]
|[http://dev.laptop.org/git/users/ben/android_hardware_libhardware_legacy/log/?h=android-4.3.1-xo4 git repository]
|}
|}
Line 63: Line 63:
* source code from vendor, Marvell and OLPC
* source code from vendor, Marvell and OLPC
{| border="1" align="center" cellpadding="6"
{| border="1" align="center" cellpadding="6"
|vendor/marvell/generic
|<div style="text-align: left; direction: ltr; margin-left: 1em;">vendor/marvell/generic</div>
|[http://dev.laptop.org/git/users/ben/android_vendor_marvell_generic/ git repository]
|[http://dev.laptop.org/git/users/ben/android_vendor_marvell_generic/ git repository]
|-
|-
|vendor/marvell/external
|<div style="text-align: left; direction: ltr; margin-left: 1em;">vendor/marvell/external</div>
|[http://dev.laptop.org/git/users/ben/android_vendor_marvell_external/ git repository]
|[http://dev.laptop.org/git/users/ben/android_vendor_marvell_external/ git repository]
|- align="center"
|- align="center"
|<div style="text-align: left; direction: ltr; margin-left: 1em;">vendor/olpc/xo4</div>
|vendor/olpc/xo4
|[http://dev.laptop.org/git/users/ben/android_vendor_olpc_xo4/ git repository]
|[http://dev.laptop.org/git/users/ben/android_vendor_olpc_xo4/ git repository]
|- align="center"
|- align="center"
|<div style="text-align: left; direction: ltr; margin-left: 1em;">device/olpc/xo4</div>
|device/olpc/xo4
|[http://dev.laptop.org/git/users/ben/android_device_olpc_xo4/ git repository]
|[http://dev.laptop.org/git/users/ben/android_device_olpc_xo4/ git repository]
|- align="center"
|- align="center"
|device/olpc/xo4-kernel
|<div style="text-align: left; direction: ltr; margin-left: 1em;">device/olpc/xo4-kernel</div>
|[http://dev.laptop.org/git/users/ben/android_device_olpc_xo4-kernel/ git repository]
|[http://dev.laptop.org/git/users/ben/android_device_olpc_xo4-kernel/ git repository]
|}
|}

Revision as of 11:12, 16 July 2014

How to build an Android image for XO-4.

We provide in this directory changes to the Android 4.3.1 source so that Android can be built for the XO-4 laptop, and then merged with an OLPC OS build to create a dual-boot image.

Ingredients

  • a well connected development system,
  • about 20 GB of download capability,

Method

$ repo init -u https://android.googlesource.com/platform/manifest -b android-4.3.1_r1
$ repo sync
  • in the same working directory, expand our file xo4-android-source-release-20131220.tar.gz and merge the changes,
  • start the build:
$ . build/envsetup.sh
$ lunch 13
$ make -j8
  • ensure you have a copy of the OLPC OS Linux, Sugar and Gnome build file, e.g. 32013o4.zd,
  • edit mkzd.sh to match file names,
  • prepare a .zd file for the XO-4:
$ cd vendor/olpc/xo4/mkzd
$ ./mkzd.sh

Alternative Method

To merge an already published Android build with an already published OLPC OS derived build:

  • download the system.img, ramdisk.img, and kernel files from the Android build directory,
  • download the build derived from OLPC OS, e.g. 32013xx4.zd or 4_0b125.zd,
  • download the mkzd.sh tool, and edit it to match file names,
  • run mkzd.sh

Source code

source code for building Android is a combination of 4 parts.

frameworks/base
git repository
frameworks/av
git repository
frameworks/native
git repository
system/core
git repository
hardware/libhardware
git repository
hardware/libhardware_legacy
git repository
  • source code from vendor, Marvell and OLPC
vendor/marvell/generic
git repository
vendor/marvell/external
git repository
vendor/olpc/xo4
git repository
device/olpc/xo4
git repository
device/olpc/xo4-kernel
git repository

See Also