sudo apt-get update
sudo apt-get install openjdk-8-jdk
sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev libgl1-mesa-dev libxml2-utils xsltproc unzip
git config --global user.name "SayantanRC"
git config --global user.email "[email protected]"
mkdir -p ~/bin
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
nano ~/.bashrc
Add the following to the end of the file:
#Android Tools
export PATH=${PATH}:~/bin
Save the file. source
it.
source ~/.bashrc
sudo apt install python
mkdir -p ~/aex_rom
cd ~/aex_rom
repo init -u git://github.com/AospExtended/manifest.git -b 9.x
repo sync -c -f --force-sync --no-clone-bundle --no-tags -j10
cd ~/aex_rom
git clone https://github.com/ishubhamsingh/android_kernel_motorola_msm8916 -b 9.x kernel/motorola/msm8916
git clone https://github.com/TheMuppets/proprietary_vendor_motorola -b lineage-16.0 vendor/motorola
git clone https://github.com/AospExtended-Devices/device_motorola_osprey -b 9.x device/motorola/osprey
git clone https://github.com/AospExtended-Devices/device_motorola_msm8916-common -b 9.x device/motorola/msm8916-common
Move into ~/aex_rom/device/motorola/osprey
using cd
- Open
aosp_osprey.mk
orlineage_osprey.mk
or anything similar named file (<rom_name>_osprey.mk
) usingnano
.
- Check if the path in the line
$(call inherit-product, vendor/aosp/common.mk)
exists. If not, modify as required.
- Open
aosp.dependencies
orlineage.dependencies
or anything similar named file (<rom_name>.dependencies
) usingnano
.
- Check if the dependencies without
remote
tag has been cloned.
- Check if
AndroidProducts.mk
file points to a valid make file.
Move into ~/aex_rom/device/motorola/msm8916-common
using cd
. If there is any .dependencies
file (not present in this case), make sure to clone the dependencies in the file.
- AEX currently doesn't officially support pie for osprey. So by following the trails of
vendor/aosp/vendorsetup.sh
, the following filevendor/aosp/tools/get_official_devices.py
had to be edited to allow Oreo devices to be shown on Pie list as well. - To avoid error:
error: vendor/motorola/msm8916-common: MODULE.TARGET.SHARED_LIBRARIES.libril already defined by hardware/ril/libril.
theAndroid.mk
file underhardware/ril/libril
was renamed toAndroid.mk.bak
- Toolchain is required (arm-eabi-7.3.1 as of now). Use the following command:
git clone https://github.com/Subinsmani/prebuilts_gcc_linux-x86_arm_arm-eabi-7.2 -b master prebuilts/gcc/linux-x86/arm/arm-eabi-7.3.1
cd ~/aex_rom
. build/envsetup.sh
lunch
Select device number from list.
make aex -j10