Fork me on GitHub

2. Подготовка Android окружения.

Настройте git - система контроля версии

MER_SDK $
git config --global user.name "Your Name"
git config --global user.email "you@example.com"

Нужно установить команду repo чтобы можно было получить (синхронизировать) исходники Android

MER_SDK $
mkdir ~/bin PATH=~/bin:$PATH 
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo 
chmod a+x ~/bin/repo

Инициализируем репозиторий на ветку cm-13.0

HABUILD_SDK $
hadk 
sudo mkdir -p $ANDROID_ROOT 
sudo chown -R $USER $ANDROID_ROOT 
cd $ANDROID_ROOT
# делаю синхронизацию с CM-13.0
repo init -u git://github.com/mer-hybris/android.git -b hybris-13.0

Создадим файл манифеста для сборки андроида, на основе которого будем собирать

HABUILD_SDK $
hadk
mkdir $ANDROID_ROOT/.repo/local_manifests

Содержимое файла $ANDROID_ROOT/.repo/local_manifests/Z00L.xml :

<?xml version="1.0" encoding="UTF-8"?>
<manifest> 
<project path="device/asus/Z00L" name="CyanogenMod/android_device_asus_Z00L" revision="cm-13.0" /> 
<project path="device/asus/msm8916-common" name="CyanogenMod/android_device_asus_msm8916-common" revision="cm-13.0" /> 
<project path="kernel/asus/msm8916" name="CyanogenMod/android_kernel_asus_msm8916" revision="cm-13.0" /> 
</manifest> 

Инициализируем дерево исходников андроида (занимает некоторое время)

HABUILD_SDK $    
hadk
repo sync --fetch-submodules 

После синхронизации дерева репозитория cm-13, нам нужно вытащить из устройства проприетарные драйвера. Это можно сделать подключив устройство через USB и запустить скрипит extarct-files.sh из папки device/asus/Z00L. Нужно скопировать структуру папок и полностью скопировать папки device и vendor

Полученные данные проприетарных драверов для CM-13 с устройства Z00L (Asus Zenfone 2) лежать тут.

Полезные команды

  • Копирование структуры папок без файлов:
find . -type d | cpio -pvdm ~/2

social