Local manifest addon for Cyanogenmod Jellybean stock-based for OMAP4 devices
The Sun JDK is no longer in Ubuntu's main package repository. In order to download it, you need to add the appropriate repository and indicate to the system which JDK should be used.
Like this.
cd ~/
wget https://github.com/flexiondotorg/oab-java6/raw/0.2.6/oab-java.sh -O oab-java.sh
chmod +x oab-java.sh
To install the Java 6 jre/jdk
sudo ./oab-java.sh
To install the Java 7 jre/jdk
sudo ./oab-java.sh -7
If you are behind a proxy you may need to run using:
sudo -i ./oab-java.sh
or
sudo -i ./oab-java.sh -7
If you want to see what this script is doing while it is running then execute the following from another shell:
tail -f ./oab-java.sh.log
This script is merely a wrapper for the most excellent Debian packaging scripts prepared by Janusz Dziemidowicz.
sudo apt-get install sun-java6-jre
sudo apt-get install sun-java6-jdk
Or if you ran the script with the -7 option.
sudo apt-get install oracle-java7-jre
sudo apt-get install oracle-java7-jdk
If you already have the "official" Ubuntu packages installed then you can upgrade by executing the following from a shell.
sudo apt-get upgrade
64-bit (recommended)
sudo apt-get install git-core gnupg flex bison gperf build-essential \
zip curl zlib1g-dev:i386 libc6-dev lib32ncurses5-dev ia32-libs \
x11proto-core-dev libx11-dev:i386 lib32readline-gplv2-dev lib32z-dev \
libgl1-mesa-dev:i386 g++-multilib mingw32 tofrodos python-markdown \
libxml2-utils xsltproc libncurses5-dev:i386 libreadline6-dev:i386 \
pngcrush schedtool
On Ubuntu 10.10:
sudo ln -s /usr/lib32/mesa/libGL.so.1 /usr/lib32/mesa/libGL.so
On Ubuntu 11.10:
sudo ln -s /usr/lib/i386-linux-gnu/libX11.so.6 /usr/lib/i386-linux-gnu/libX11.so
You will need to set up some directories in your build environment.
To create them run:
mkdir -p ~/bin
mkdir -p ~/android/system
Enter the following to download make executable the "repo" binary:
curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
chmod a+x ~/bin/repo
Now open up your bashrc (nano ~/.bashrc) and add the following to the end:
PATH=~/bin:$PATH
Save the file and source it:
source ~/.bashrc
cd ~/bin
repo init
You may need to reboot for these changes to take effect.
Now enter the following to initialize the repository:
cd ~/android/system/
To initialize your local repository using the Cyanogemod manifest, use commands like these:
repo init -u git://github.com/CyanogenMod/android.git -b jellybean
curl -L -o .repo/local_manifest.xml -O -L https://raw.github.com/MotorolaSpyder/android_local_Spyder/jellybean-cm-stock/local_manifest.xml
( or Download: https://github.com/MotorolaSpyder/android_local_Spyder/blob/jellybean-cm-stock/local_manifest.xml
and place it in ~/Android/.repo/local_manifest.xml (or ~/'name you chose'/.repo)
Then to sync up:
repo sync
Sync Relevant Repositories
NOTE: This only needs to be done the first time after syncing the repository. If this step has been completed, skip to Copy Proprietary Files. By default, CyanogenMod 10 only syncs the core android repositories and none of the device or kernel trees to save both bandwidth and time. Run the following command to sync the necessary components for the device:
. build/envsetup.sh && breakfast spyder
or
. build/envsetup.sh && breakfast umts_spyder
The system will automatically begin pulling the device repository and all required dependencies.
NOTE: This only needs to be run once. If these steps have already been performed, skip to Download Prebuilts. This step requires possession of the Epicmtd with a working copy of CyanogenMod 9 installed and ADB working on the computer. This script will copy the proprietary files from the device. Connect the device to the computer and run the following commands:
cd ~/android/system/device/motorola/spyder/
or
cd ~/android/system/device/motorola/umts_spyder/
./extract-files.sh
NOTE: If some hardware isn't functioning properly, this script may need to be run again in case there are updated proprietary files.
Download Prebuilts needed by the build:
~/android/system/vendor/cm/get-prebuilts
First, check for updates in the source:
cd ~/android/system/
repo sync
The basic sequence of build commands is as follows:
Initialize the environment with the envsetup.sh script. Note that replacing "source" with a single dot saves a few characters, and the short form is more commonly used in documentation.
Now, the environment must be configured for the build process and then begin compilation for the spyder or umts_spyder.
. build/envsetup.sh && brunch spyder
or
. build/envsetup.sh && brunch umts_spyder
or you can select from a list this way
. build/envsetup.sh
lunch
Enter the number of the build you want to compile and press
To start the compiler type this:
make -j16 otapackage 2>&1 | tee compiler.log
This will begin the process of compiling the actual ROM Plus it will Create a Log File Here:
cd ~/android/system/
Look for a file called "Compiler.log" but be warned the file will be huge a few Megabites in size because it logs the entire process of which happened when complingiling which you can use to debug and see what went wrong in case something messed up while it was compiling