Jump to: navigation, search

INCOMPLETE | This page is incomplete.

Building an android ROM from source[edit]

This page is based on xda and cyanogenmod. Note that you can find device specific instructions, for CyanogenMode, here.

INCOMPLETE tutorial...

Getting Started[edit]

Start following cyanogenmod untill "Initialize the CyanogenMod source repository". Note that you can change
repo init
command to get a different rom source.

i.e.

repo init -u git://github.com/zakkak/android.git -b cm-11
After running
repo init
, invoke
repo sync -j#
, where # is the number of hardware threads of the machine you are running on. This will fetch all the sources to your local filesystem, note that in my case it took me 1 hour and 40 minutes with download rates up to 2 MiB/s.

Prebuilts and proprietary drivers[edit]

Depending on the manifest of the android rom you fetched you might or might not need to download some extra stuff.

For non CyanogenMod ROMs the generic procedure is:

mkdir -p kernel/<MANAFACTURER>/
cd kernel/<MANAFACTURER>/
git clone <KERNEL_GIT_LINK> <DEVICE_CODENAME/KENREL_NAME>
cd ../../vendor/
git clone <VENDOR_GIT_LINK> <MANAFACTURER> 
cd ../device
mkdir <MANAFACTURER>
cd <MANAFACTURER>
git clone <DEVICE_TREE_GIT_LINK> <DEVICE_CODENAME>
cd ../../

Then follow the steps "Get prebuilt apps", "Prepare the device-specific code" and "Extract proprietary blobs" from cyanogenmod and continue with the rest.