/device_huawei_pulse

Device configuration for Huawei U8220/U8230 / T-Mobile Pulse

Primary LanguageShell

How to git the code
-----------------------
Install git and gpg (gnupg).
Download repo - http://source.android.com/source/git-repo.html

$ mkdir mydroid
$ cd mydroid
$ repo init -u http://github.com/pulse-android-dev/platform_manifest.git
$ repo sync




Extract necessary binaries
-----------------------
Some compiled code from the official eclair roms is re-used in froyo. Some of this code is not open-source and will not be included in the git repositories. 
The files can be extracted from any Pulse/U8220/U8230 eclair rom, but the official T-Mobile UK rom is recommended.

$ device/huawei/pulse/extract_zip.sh <zip_file>

zip_file should be a signed zip update file (it doesn't matter if its not signed, but it should be of that format). eg. One of flibblesan's roms.
I will add support later for pulling the files from a running phone or UPDATA.UPP.




Building the system
-----------------------
Once thats done you can start compiling.

Follow the aosp instructions on setting up the build environment. - http://source.android.com/source/download.html

Android generally does not build nicely in 64-bit environments. Ubuntu apparently works well using multilib but some distros don't. I use chroot to switch to a 32-bit build environment on Arch linux (this results in a 64-bit kernel running 32-bit binaries).
Windows user - learn to use Linux or OS X. Ubuntu installed in a VM will be easiest to setup and should get the job done.

After the environment is setup.

$ cd mydroid
$ source build/envsetup.sh
$ lunch

Select the device you want to build for.                         

$ make 

I recommend using multiple threads for make if you have a multi core/processor system. The build time is hugely reduced. By default make will use 1 thread (-j1), set it to use 2*NumberOfCPUsAvailable (so on my quad core -j8). Reducing the number of threads used will reduce the impact on system performance 
while the build is running.

The output will be image files in {buildroot}/out/target/product/pulse/. Flash with fastboot.
There is an option to build a signed update.zip (make otapackage) but at the moment it is failing due to a recovery image dependancy.

$ fastboot flash boot out/targat/product/pulse/boot.img
$ fastboot flash system out/targat/product/pulse/system.img
$ fastboot flash userdata out/targat/product/pulse/userdata.img
$ fastboot reboot