[Android Q&A, Help & Troubleshooting] jeremyandroid:
/* ROM VERSION 4.4.2 WITH ADB LEVEL ROOT ONLY AND NO GAPPS*/

This is a guide on How to build a pure Vanilla AOSP ROM. This may NOT be the best way or the fastest way ,but its just the way I do it AS I HAVE TRIED TO SOMEWHAT SIMPLIFY IT ,from the Android Source page ,Feel free to add comments or ask questions. But before we even get started this will be done on a Linux machine running Ubuntu 13.04 and we have to get all the tools we need to get setup.#NOTE THE COMMANDS BELOW ARE READY FOR YOU TO COPY AND PASTE IN TERMINAL EMULATOR.

/*ADD JAVA*/ ;

$sudo add-apt-repository ppa:webupd8team/java

$sudo apt-get update && sudo apt-get install oracle-java6-installer

java -version

/*ADD NEEDED TOOLS TO YOUR PC */

$sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev zlib1g-dev:i386 libc6-dev lib32ncurses5-dev lib32z1 lib32ncurses5 lib32bz2-1.0 x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 lib32z1-dev libgl1-mesa-glx:i386 libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc readline-common libreadline6-dev libreadline6 lib32readline-gplv2-dev libncurses5-dev lib32readline5 lib32readline6 libreadline-dev libreadline6-dev:i386 libreadline6:i386 bzip2 libbz2-dev libbz2-1.0 libghc-bzlib-dev lib32bz2-dev libsdl1.2-dev libesd0-dev squashfs-tools pngcrush schedtool libwxgtk2.8-dev python

$sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so

/*NEXT YOU NEED TO GET IN SYNC WITH THE GOOGLE REPOSITORYS LOCALLY*/;

/*Add repo to your system and make it readable and writable*/;

$mkdir ~/bin && curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo && $chmod a+x ~/bin/repo

Add a path to bin folder for the repo you just made so your system will find it

$sudo gedit .bashrc

$export PATH=~/bin:$PATH <-(add to end of bashrc)

/*SET UP GIT LOCALLY*/;

$git config --global user.email "you@youremail.com"

$git config --global user.name "yourpreferredusername"

/*NOW MAKE A FOLDER LABEL IT ANYNAME YOU WISH AND THEN SYNC LOCALLY WITH GIT REPOSITORYS*/;

IF USING A PROXY OR IF A MIRROR IS NEEDED BECAUSE YOU ARE ON A SLOW CONNECTION REFER TO THIS LINK http://source.android.com/source/downloading.html

/*After installing Repo, set up your client to access the Android source repository #LINE 3*/;

$mkdir ~/AOSP

$cd ~/AOSP

$repo init -u https://android.googlesource.com/platform/manifest -b android-4.4.2_r1

$repo sync

/*LOAD THE FOLLOWING KEY INTO YOUR GNUPG KEY DATABASE. THE KEY IS USED TO SIGN ANNOTATED TAGS THAT REPRESENT RELEASES.THE BELOW. !!! IS A COPY AND PASTE !!!FROM THE ANDROID SOURCE SITE*/;

$gpg --import

Copy and paste the key(s) below, then enter EOF (Ctrl-D) to end the input and process the keys.

-----BEGIN PGP PUBLIC KEY BLOCK-----

Version: GnuPG v1.4.2.2 (GNU/Linux)

mQGiBEnnWD4RBACt9/h4v9xnnGDou13y3dvOx6/t43LPPIxeJ8eX9WB+8LLuROSV

lFhpHawsVAcFlmi7f7jdSRF+OvtZL9ShPKdLfwBJMNkU66/TZmPewS4m782ndtw7

8tR1cXb197Ob8kOfQB3A9yk2XZ4ei4ZC3i6wVdqHLRxABdncwu5hOF9KXwCgkxMD

u4PVgChaAJzTYJ1EG+UYBIUEAJmfearb0qRAN7dEoff0FeXsEaUA6U90sEoVks0Z

wNj96SA8BL+a1OoEUUfpMhiHyLuQSftxisJxTh+2QclzDviDyaTrkANjdYY7p2cq

/HMdOY7LJlHaqtXmZxXjjtw5Uc2QG8UY8aziU3IE9nTjSwCXeJnuyvoizl9/I1S5

jU5SA/9WwIps4SC84ielIXiGWEqq6i6/sk4I9q1YemZF2XVVKnmI1F4iCMtNKsR4

MGSa1gA8s4iQbsKNWPgp7M3a51JCVCu6l/8zTpA+uUGapw4tWCp4o0dpIvDPBEa9

b/aF/ygcR8mh5hgUfpF9IpXdknOsbKCvM9lSSfRciETykZc4wrRCVGhlIEFuZHJv

aWQgT3BlbiBTb3VyY2UgUHJvamVjdCA8aW5pdGlhbC1jb250cmlidXRpb25AYW5k

cm9pZC5jb20+iGAEExECACAFAknnWD4CGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIX

gAAKCRDorT+BmrEOeNr+AJ42Xy6tEW7r3KzrJxnRX8mij9z8tgCdFfQYiHpYngkI

2t09Ed+9Bm4gmEO5Ag0ESedYRBAIAKVW1JcMBWvV/0Bo9WiByJ9WJ5swMN36/vAl

QN4mWRhfzDOk/Rosdb0csAO/l8Kz0gKQPOfObtyYjvI8JMC3rmi+LIvSUT9806Up

hisyEmmHv6U8gUb/xHLIanXGxwhYzjgeuAXVCsv+EvoPIHbY4L/KvP5x+oCJIDbk

C2b1TvVk9PryzmE4BPIQL/NtgR1oLWm/uWR9zRUFtBnE411aMAN3qnAHBBMZzKMX

LWBGWE0znfRrnczI5p49i2YZJAjyX1P2WzmScK49CV82dzLo71MnrF6fj+Udtb5+

OgTg7Cow+8PRaTkJEW5Y2JIZpnRUq0CYxAmHYX79EMKHDSThf/8AAwUIAJPWsB/M

pK+KMs/s3r6nJrnYLTfdZhtmQXimpoDMJg1zxmL8UfNUKiQZ6esoAWtDgpqt7Y7s

KZ8laHRARonte394hidZzM5nb6hQvpPjt2OlPRsyqVxw4c/KsjADtAuKW9/d8phb

N8bTyOJo856qg4oOEzKG9eeF7oaZTYBy33BTL0408sEBxiMior6b8LrZrAhkqDjA

vUXRwm/fFKgpsOysxC6xi553CxBUCH2omNV6Ka1LNMwzSp9ILz8jEGqmUtkBszwo

G1S8fXgE0Lq3cdDM/GJ4QXP/p6LiwNF99faDMTV3+2SAOGvytOX6KjKVzKOSsfJQ

hN0DlsIw8hqJc0WISQQYEQIACQUCSedYRAIbDAAKCRDorT+BmrEOeCUOAJ9qmR0l

EXzeoxcdoafxqf6gZlJZlACgkWF7wi2YLW3Oa+jv2QSTlrx4KLM=

=Wi5D

-----END PGP PUBLIC KEY BLOCK-----

After importing the keys, you can verify any tag with

$git tag -v TAG_NAME

/*INSTALL PROPRIETARY BINARIES .THESE ARE NEEDED FOR GPS/BLUETOOTH/ETC.*/;

https://developers.google.com/androi...rs#razorkrt16o

/*TIME TO GET STARTED*/;

source build/envsetup.sh

/*RUN LUNCH IN TERMINAL*/;

"Then select your proper selections"

/*THEN RUN MAKE*/;

BUILD EVERYTHING WITH MAKE.GNU MAKE CAN HANDLE PARALLEL TASK WITH A -jN ARGUMENT AND ITS A COMMON TASK TO USE A NUMBER OF TASKS N THATS BETWEEN 1 AND 2 TIMES THE NUMBER OF HARDWARE THREADS ON THE LOCALLY MACHINE. TO ME 12 IS A SAFE NUMBER FOR A LOW LEVEL QUAD CORE MACHINE.

make -j12 otapackage

Here are your Gapps:

http://xdaforums.com/showthread.php?t=2397942

This SU, I recommend for your ROM by: Chainfire http://xdaforums.com/showthread.php?t=1538053