[ROM][CM] KitKang Rom CM11 Kangs (**Building Guide Now Included!!)

Search This thread

dmeadows013

Inactive Recognized Developer
Sep 27, 2010
2,491
3,791
Hoboken, NJ
epicandroidroms.blogspot.com
Welcome to KitKang ROM!

* Your warranty is now void.
* We are not responsible for bricked devices, dead SD cards,
* or you getting fired because the alarm app failed. Please do
* some research if you have any concerns about features included
* in this ROM before flashing it! YOU are choosing to make these
* modifications, and if you point the finger at us for
* messing up your device, we will laugh at you.

Description:
KitKang ROM is a ROM built from the CyanogenMod 11 source, with some cherrypicks added for features and functionality.​

Bugs List:
Code:
-???

Current CherryPicks
Code:
#56346 LockScreen: allow long-press actions from hardware keys (1/2)
#56357 LockScreen: allow long-press actions from hardware keys (2/2)
#55209 Forward port Status Bar interface (1/2)
#55211 Forward port Status Bar settings (2/2)

How To Flash:​
Coming From a Different ROM?
1. Make sure you are unlocked and running the latest version of ClockworkMod Recovery (Either Touch or Non-Touch is fine). If you do not know how to unlock your bootloader or install recovery, follow these steps.
2. Make sure you are running the latest firmware version. If you do not know what firmware version you are running, you can check in Settings in the "About Phone" tab. Currently, the latest firmware is VRBMF1, and a recovery flashable of the firmware can be found here. To install, simply reboot to ClockworkMod and flash the zip file.
3. Backup everything you need. All of your files will be deleted! To backup your apps, I recommend using Helium. It is very easy and straightforward.
4. Download the ROM and G-Apps from the links provided and copy them over to your phone via USB cable.
5. Reboot to recovery. To do so, either use the built in reboot option to recovery in ROMs such as CyanogenMod, or power down and hold Power + Home + Vol Up and you should be in recovery.
6. Wipe the data, system, cache, and dalvik cache partitions in recovery. (Dalvik wipe is located in Advanced Settings)
7. Install the ROM and G-Apps files
8. Reboot and setup your phone!

Updating From A Previous KitKang Nightly?
1. Download the ROM and G-Apps from the links provided and copy them over to your phone via USB cable.
2. Reboot to recovery. To do so, either use the built in reboot option to recovery in ROMs such as CyanogenMod, or power down and hold Power + Home + Vol Up and you should be in recovery.
3. Wipe the cache and dalvik cache partitions in recovery. (Dalvik wipe is located in Advanced Settings)
4. Install the ROM and G-Apps files
5. Reboot!

Download Links


ROM DOWNLOAD
(Note: This is a folder, and has all of my builds. Download the one you want. If you don't know what to download, use the latest.




KANGED G-APPS DOWNLOAD
Not supported or recommended because of stability issues. However, this does include the new dialer with Google Search support. Use with caution. If you do not know which G-Appps package to use, use the first link.


Enjoy?


If you enjoy the ROM, please consider sending me a donation​



XDA:DevDB Information
KitKang Rom CM11 Kangs, a ROM for the Verizon Samsung Galaxy S III

Contributors
dmeadows013, XRaptor29, cammykool, tvall
ROM Kernel: Linux 3.4.x
ROM Firmware Required: VRBMF1
Based On: CyanogenMod

Version Information
Status: Testing

Created 2013-11-14
Last Updated 2014-01-01
 

Attachments

  • Screenshot_2013-11-12-22-22-16.png
    Screenshot_2013-11-12-22-22-16.png
    76.6 KB · Views: 9,383
  • Screenshot_2013-11-13-15-15-56.png
    Screenshot_2013-11-13-15-15-56.png
    140.4 KB · Views: 10,354
  • Screenshot_2013-11-13-15-15-38.png
    Screenshot_2013-11-13-15-15-38.png
    158.8 KB · Views: 9,687
  • Screenshot_2013-11-13-15-15-25.jpg
    Screenshot_2013-11-13-15-15-25.jpg
    65.1 KB · Views: 10,707

dmeadows013

Inactive Recognized Developer
Sep 27, 2010
2,491
3,791
Hoboken, NJ
epicandroidroms.blogspot.com
Guide to Building

Guide for Building KitKang on Mac OSX



This is a guide demonstrating how to build KitKang for yourself on Mac. I am not responsible for anything you do to your computer or your phone as a result of following this guide. Before building, I would recommend that you have at least a little knowledge of Terminal, and a powerful computer. AOSP takes up a lot of resources, and even my i7 Ivy Bridge build with 16GB RAM and an SSD takes almost an hour to build. The AOSP code takes up a lot of space, so I recommend AT LEAST 150GB free space, just to be safe. This guide involves installing specific packages to build AOSP. To install these packages, we will use Homebrew. You will also need XCode to build. If you do not have these installed, refer to the beginning of the guide. If you already have these installed for some reason, skip the first section for installing XCode and Homebrew.



Installing XCode/Homebrew
  • Download and install XCode from the Mac App Store. You will need an Apple account to do this.
  • After downloading and installing XCode, you will need the Command Line Tools. These can be installed by opening a Terminal window and entering:
    Code:
    xcode-select --install
  • After entering this, hit return and a box should pop up asking you if you want to install Command Line Tools. Click yes, and wait for it to install.
  • Now, make sure you have the latest Java Runtime. You do this in Terminal by entering a command and going through an installation process. Enter the command
    Code:
    java
  • With the Command Line Tools and Java installed, we can now install Homebrew. To do so, open Terminal again and enter the following:
    Code:
    ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go/install)"
  • Make sure Homebrew is installed and works correctly by running
    Code:
    brew doctor
  • If you got errors in the previous command, try googling to see if there is something else you need. If you can run the command without errors, you are good to go!
  • We must now move the SDK so the build recognizes what to use. To do this, run the following commands in Terminal
    Code:
    sudo mkdir /Developer
    Code:
    sudo mkdir /Developer/SDKs
    Code:
    sudo cp -r /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk /Developer/SDKs/MacOSX.sdk
  • NOTE: You need superuser permissions to run the previous 3 commands.
  • Now, in Terminal, type
    Code:
    nano ~/.bash_profile
  • If you get a no file found error, then run
    Code:
    nano -w ~/.bash_profile
  • You should get a screen with some text. Scroll to the bottom using the arrow keys until there's just blank spaces, and paste the following code
    Code:
    export BUILD_MAC_SDK_EXPERIMENTAL=1
  • Save the file using ctrl-x and clicking yes and enter
  • Restart Terminal to make the changes take effect
  • With Homebrew now installed, we can continue to downloading required build packages!



Installing Required Packages
  • Now we will install packages required to build the AOSP source. This can be done with the Terminal command
    Code:
    brew install git coreutils findutils gnu-sed gnupg pngcrush repo
  • With these packages installed, we need to make some symlinks so that OSX knows which files to use, and doesn't mess up the build. To do this, enter
    Code:
    ln -s /usr/local/bin/gfind /usr/local/bin/find && ln -s /usr/local/bin/gsed /usr/local/bin/sed
  • With these packages installed, we are now ready to create a build environment and download the AOSP source.



Preparing the Build Environment and Downloading the Source
  • First, we need to create a dedicated workspace for our AOSP code. This can be done in Terminal by entering
    Code:
    hdiutil create -type SPARSE -fs "Case-sensitive Journaled HFS+" -size 120g -volname "android" -attach ~/Desktop/Android
  • This will create the workspace image on our desktop. To move it, simply drag and drop in Finder to the location you want.
  • Now, locate the workspace in Finder and double click it to mount it
  • NOTE: If you moved your workspace to a different directory, you will have to use the path to that directory in the previous step.
  • Next, from within Terminal, locate the directory by typing
    Code:
    cd /Volumes/android
  • Now that we are in the working directory, it is time to download the Android Source. This is done by entering the following command
    Code:
    repo init -u git://github.com/CyanogenMod/android.git -b cm-11.0 && repo sync && say 'finished'
  • Wait for the download to finish. Depending on your connection, it can take a long time, so get comfortable.
  • When the download finishes and you can see all of the source folders in your directory, it is time to download the S3 specific files. To do this, we need to edit the roomservice.xml. However, this file is hidden. We can access it by entering the following in Terminal
    Code:
    open -a TextEdit .repo/local_manifests/roomservice.xml
  • You should get a blank file in TextEdit. Enter the following code as is here
    Code:
    <?xml version="1.0" encoding="UTF-8"?>
    <manifest>
      <project name="TheMuppets/proprietary_vendor_samsung" path="vendor/samsung" revision="cm-11.0" />
      <project name="CyanogenMod/android_device_samsung_d2vzw" path="device/samsung/d2vzw" remote="github" />
      <project name="CyanogenMod/android_device_samsung_qcom-common" path="device/samsung/qcom-common" remote="github" />
      <project name="CyanogenMod/android_device_samsung_msm8960-common" path="device/samsung/msm8960-common" revision="cm-10.2" />
      <project name="CyanogenMod/android_device_samsung_d2-common" path="device/samsung/d2-common" remote="github" />
      <project name="CyanogenMod/android_kernel_samsung_d2" path="kernel/samsung/d2" remote="github" />
      <project name="CyanogenMod/android_hardware_samsung" path="hardware/samsung" remote="github" />
    </manifest>
  • Save and close the file, and again run
    Code:
    repo sync
  • With the S3 specific files downloaded, we need to download the CyanogenMod specific app files. This can be done by running
    Code:
    ./vendor/cm/get-prebuilts
  • With this done, we need to download the cherrypicks specific to the S3. Eventually, these will not be needed, but as CyanogenMod 11 is still in beta, it is needed for now. Because the cherrypicks are often being merged, and new ones created, the kind folks at CyanogenMod have created a Google Document with a list of the latest commits. This is located here. NOTE: This document does not include any cherrypicks that I may include for features. By using these cherrypicks, you are installing everything needed to make the ROM as stable as possible. I may occasionally include other cherrypicks that I find enhance features. Inside the document, scroll down to the '# repopicks' section and continue scrolling past the commit messages. At the bottom, you will see a section titled 'Combined'. This will have a command such as
    Code:
    repopick -s s <List of commit hashes>
  • You could simply copy this command and paste it into a Terminal window, but that would put the cherrypicks on new branches of the source, which could cause problems with resyncing the source. I would recommend copying only the commit numbers.
  • In Terminal, run the command
    Code:
    . build/envsetup.sh
  • Run the repopick command, adding the commit numbers to the end. Here is an example
    Code:
    repopick 53075 53131 53302 53309 53356 53445 53528 53595 53603 53604 53637 53964 54197 54198 54219 53468 54251 54274 54277
  • If the commits do not all merge correctly, you will get what is called a merge conflict. This is because one or more of the commits does not play nice with the CyanogenMod code. Make sure you have the latest code by resyncing, and also make sure you have the latest cherrypicks. If the command still fails, wait a few hours because the document probably just hasn't been updated.
  • Once you get all of the commits merged correctly, it is time to build!



Building the Source
  • Before building, if you have extra space on your hard drive, you can optionally use CCache to speed up your build a bit. Enable this from inside the working directory by using
    Code:
    export USE_CCACHE=1 && prebuilt/darwin-x86/ccache/ccache -M 20G
  • You may also need to change the ulimit to support building. On OSX 10.9, I experienced errors stating that I had too many files open, and I had to change the ulimit amount. NOTE: If you have issues, you will need to do this every time you build! Change the ulimit amount by running
    Code:
    ulimit -Hn 8192
    and
    Code:
    ulimit -Sn 8192
  • Make sure your working directory is clean by running
    Code:
    make clean
  • Next, initiate the build by running
    Code:
    brunch d2vzw
  • If all goes well you should have a flashable zip in the out/target/product/d2vzw/ folder. Enjoy!



Updating the Source
  • Later on, you may decide to build another file to see with new changes to the CyanogenMod code. Think of this as a ROM update. To do this, you will need to follow some steps. All of these steps have been completed already in this guide, so I will just be outlining them, and will not be listing everything. If you forget how to do something, consult the guide.
  • Repo sync
  • Apply cherrypicks
  • Enable CCache (Optional)
  • Set the ulimits
  • Clean your working directory using
    Code:
    make clean
  • Build the code using
    Code:
    brunch d2vzw
 
Last edited:

markdapimp

Senior Member
Nov 8, 2013
1,431
374
Recognized Developer - OP

OP hmmm OVER POWERED

Finally i can choose between sspencer10,tvall and cammykool and now you!

---------- Post added at 01:06 AM ---------- Previous post was at 12:41 AM ----------

Same Gapps? PA?
 

elreydenj

Senior Member
Aug 12, 2012
956
183
Is the 4.3 or the 4.4 camera included in this rom? If it is the 4.4 camera, is the quality of the photo better than the initial builds? Thank you.
 

mds96

Senior Member
Nov 30, 2010
395
88
Anyone know of a fix to get the apps from the Play Store that say sd card storage is insufficient to install? Root Explorer did it to me, but that's all I know of so far. Not a big deal, can use other apps. Thanks for the builds!
 

markdapimp

Senior Member
Nov 8, 2013
1,431
374
Anyone know of a fix to get the apps from the Play Store that say sd card storage is insufficient to install? Root Explorer did it to me, but that's all I know of so far. Not a big deal, can use other apps. Thanks for the builds!

Do a clean wipe in CWM and flash the FULL PA Gapps

---------- Post added at 02:22 AM ---------- Previous post was at 02:12 AM ----------

Some screenshots for OP

Screenshot_2013-11-13-15-15-25.png


Screenshot_2013-11-13-15-15-38.png


Screenshot_2013-11-13-15-15-56.png


Screenshot_2013-11-12-22-22-16.png
 

XRaptor29

Senior Member
Dec 4, 2011
351
228
33
Here
Anyone know of a fix to get the apps from the Play Store that say sd card storage is insufficient to install? Root Explorer did it to me, but that's all I know of so far. Not a big deal, can use other apps. Thanks for the builds!

seems to be a bug to only paid apps. free ones work for me. weird. :confused:
 

mds96

Senior Member
Nov 30, 2010
395
88
Thanks Markdapimp! I kinda figured a clean wipe would solve the problem, but guess I wanted to be lazy, lol
 

WeThePeople13

Senior Member
Jan 5, 2012
329
85
Downloading!! Quick question before I flash..... I am running tvalls build from a few days ago, can I dirty flash or no? Also I love your builds it reminds me of when CM9 was built for the ReZound!! Props bro!

Sent from my SCH-I535 using Tapatalk 2
 

dmeadows013

Inactive Recognized Developer
Sep 27, 2010
2,491
3,791
Hoboken, NJ
epicandroidroms.blogspot.com
Downloading!! Quick question before I flash..... I am running tvalls build from a few days ago, can I dirty flash or no? Also I love your builds it reminds me of when CM9 was built for the ReZound!! Props bro!

Sent from my SCH-I535 using Tapatalk 2

Yes dirty flash should be fine, but idk for sure. I've got homework to do but when I get time I'll make a new build and upload/put more stuff in the OP. Maybe tonight but probably not.

Screenshots in screenshots tab :) thanks @markdapimp
 

WeThePeople13

Senior Member
Jan 5, 2012
329
85
Yea that is what i was thinking. I just am lazy lol and I really hate doing that whole process of getting art enabled.

Sent from my SCH-I535 using Tapatalk 2
 

Top Liked Posts

  • There are no posts matching your filters.
  • 56
    Welcome to KitKang ROM!

    * Your warranty is now void.
    * We are not responsible for bricked devices, dead SD cards,
    * or you getting fired because the alarm app failed. Please do
    * some research if you have any concerns about features included
    * in this ROM before flashing it! YOU are choosing to make these
    * modifications, and if you point the finger at us for
    * messing up your device, we will laugh at you.

    Description:
    KitKang ROM is a ROM built from the CyanogenMod 11 source, with some cherrypicks added for features and functionality.​

    Bugs List:
    Code:
    -???

    Current CherryPicks
    Code:
    #56346 LockScreen: allow long-press actions from hardware keys (1/2)
    #56357 LockScreen: allow long-press actions from hardware keys (2/2)
    #55209 Forward port Status Bar interface (1/2)
    #55211 Forward port Status Bar settings (2/2)

    How To Flash:​
    Coming From a Different ROM?
    1. Make sure you are unlocked and running the latest version of ClockworkMod Recovery (Either Touch or Non-Touch is fine). If you do not know how to unlock your bootloader or install recovery, follow these steps.
    2. Make sure you are running the latest firmware version. If you do not know what firmware version you are running, you can check in Settings in the "About Phone" tab. Currently, the latest firmware is VRBMF1, and a recovery flashable of the firmware can be found here. To install, simply reboot to ClockworkMod and flash the zip file.
    3. Backup everything you need. All of your files will be deleted! To backup your apps, I recommend using Helium. It is very easy and straightforward.
    4. Download the ROM and G-Apps from the links provided and copy them over to your phone via USB cable.
    5. Reboot to recovery. To do so, either use the built in reboot option to recovery in ROMs such as CyanogenMod, or power down and hold Power + Home + Vol Up and you should be in recovery.
    6. Wipe the data, system, cache, and dalvik cache partitions in recovery. (Dalvik wipe is located in Advanced Settings)
    7. Install the ROM and G-Apps files
    8. Reboot and setup your phone!

    Updating From A Previous KitKang Nightly?
    1. Download the ROM and G-Apps from the links provided and copy them over to your phone via USB cable.
    2. Reboot to recovery. To do so, either use the built in reboot option to recovery in ROMs such as CyanogenMod, or power down and hold Power + Home + Vol Up and you should be in recovery.
    3. Wipe the cache and dalvik cache partitions in recovery. (Dalvik wipe is located in Advanced Settings)
    4. Install the ROM and G-Apps files
    5. Reboot!

    Download Links


    ROM DOWNLOAD
    (Note: This is a folder, and has all of my builds. Download the one you want. If you don't know what to download, use the latest.




    KANGED G-APPS DOWNLOAD
    Not supported or recommended because of stability issues. However, this does include the new dialer with Google Search support. Use with caution. If you do not know which G-Appps package to use, use the first link.


    Enjoy?


    If you enjoy the ROM, please consider sending me a donation​



    XDA:DevDB Information
    KitKang Rom CM11 Kangs, a ROM for the Verizon Samsung Galaxy S III

    Contributors
    dmeadows013, XRaptor29, cammykool, tvall
    ROM Kernel: Linux 3.4.x
    ROM Firmware Required: VRBMF1
    Based On: CyanogenMod

    Version Information
    Status: Testing

    Created 2013-11-14
    Last Updated 2014-01-01
    23
    New build (11-27) up. Nothing really new except some cherrypicks got merged so I don't have to cherry pick them anymore. Still kept out the camera image sizes to see if that was causing issues. This is the last build until Saturday or Sunday; I have family in town and am taking a break for the holidays. If I for some reason make a build I'll upload it. Have a good Thanksgiving everyone!

    Sent from my Nexus 7 running KitKat
    21
    Guide to Building

    Guide for Building KitKang on Mac OSX



    This is a guide demonstrating how to build KitKang for yourself on Mac. I am not responsible for anything you do to your computer or your phone as a result of following this guide. Before building, I would recommend that you have at least a little knowledge of Terminal, and a powerful computer. AOSP takes up a lot of resources, and even my i7 Ivy Bridge build with 16GB RAM and an SSD takes almost an hour to build. The AOSP code takes up a lot of space, so I recommend AT LEAST 150GB free space, just to be safe. This guide involves installing specific packages to build AOSP. To install these packages, we will use Homebrew. You will also need XCode to build. If you do not have these installed, refer to the beginning of the guide. If you already have these installed for some reason, skip the first section for installing XCode and Homebrew.



    Installing XCode/Homebrew
    • Download and install XCode from the Mac App Store. You will need an Apple account to do this.
    • After downloading and installing XCode, you will need the Command Line Tools. These can be installed by opening a Terminal window and entering:
      Code:
      xcode-select --install
    • After entering this, hit return and a box should pop up asking you if you want to install Command Line Tools. Click yes, and wait for it to install.
    • Now, make sure you have the latest Java Runtime. You do this in Terminal by entering a command and going through an installation process. Enter the command
      Code:
      java
    • With the Command Line Tools and Java installed, we can now install Homebrew. To do so, open Terminal again and enter the following:
      Code:
      ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go/install)"
    • Make sure Homebrew is installed and works correctly by running
      Code:
      brew doctor
    • If you got errors in the previous command, try googling to see if there is something else you need. If you can run the command without errors, you are good to go!
    • We must now move the SDK so the build recognizes what to use. To do this, run the following commands in Terminal
      Code:
      sudo mkdir /Developer
      Code:
      sudo mkdir /Developer/SDKs
      Code:
      sudo cp -r /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk /Developer/SDKs/MacOSX.sdk
    • NOTE: You need superuser permissions to run the previous 3 commands.
    • Now, in Terminal, type
      Code:
      nano ~/.bash_profile
    • If you get a no file found error, then run
      Code:
      nano -w ~/.bash_profile
    • You should get a screen with some text. Scroll to the bottom using the arrow keys until there's just blank spaces, and paste the following code
      Code:
      export BUILD_MAC_SDK_EXPERIMENTAL=1
    • Save the file using ctrl-x and clicking yes and enter
    • Restart Terminal to make the changes take effect
    • With Homebrew now installed, we can continue to downloading required build packages!



    Installing Required Packages
    • Now we will install packages required to build the AOSP source. This can be done with the Terminal command
      Code:
      brew install git coreutils findutils gnu-sed gnupg pngcrush repo
    • With these packages installed, we need to make some symlinks so that OSX knows which files to use, and doesn't mess up the build. To do this, enter
      Code:
      ln -s /usr/local/bin/gfind /usr/local/bin/find && ln -s /usr/local/bin/gsed /usr/local/bin/sed
    • With these packages installed, we are now ready to create a build environment and download the AOSP source.



    Preparing the Build Environment and Downloading the Source
    • First, we need to create a dedicated workspace for our AOSP code. This can be done in Terminal by entering
      Code:
      hdiutil create -type SPARSE -fs "Case-sensitive Journaled HFS+" -size 120g -volname "android" -attach ~/Desktop/Android
    • This will create the workspace image on our desktop. To move it, simply drag and drop in Finder to the location you want.
    • Now, locate the workspace in Finder and double click it to mount it
    • NOTE: If you moved your workspace to a different directory, you will have to use the path to that directory in the previous step.
    • Next, from within Terminal, locate the directory by typing
      Code:
      cd /Volumes/android
    • Now that we are in the working directory, it is time to download the Android Source. This is done by entering the following command
      Code:
      repo init -u git://github.com/CyanogenMod/android.git -b cm-11.0 && repo sync && say 'finished'
    • Wait for the download to finish. Depending on your connection, it can take a long time, so get comfortable.
    • When the download finishes and you can see all of the source folders in your directory, it is time to download the S3 specific files. To do this, we need to edit the roomservice.xml. However, this file is hidden. We can access it by entering the following in Terminal
      Code:
      open -a TextEdit .repo/local_manifests/roomservice.xml
    • You should get a blank file in TextEdit. Enter the following code as is here
      Code:
      <?xml version="1.0" encoding="UTF-8"?>
      <manifest>
        <project name="TheMuppets/proprietary_vendor_samsung" path="vendor/samsung" revision="cm-11.0" />
        <project name="CyanogenMod/android_device_samsung_d2vzw" path="device/samsung/d2vzw" remote="github" />
        <project name="CyanogenMod/android_device_samsung_qcom-common" path="device/samsung/qcom-common" remote="github" />
        <project name="CyanogenMod/android_device_samsung_msm8960-common" path="device/samsung/msm8960-common" revision="cm-10.2" />
        <project name="CyanogenMod/android_device_samsung_d2-common" path="device/samsung/d2-common" remote="github" />
        <project name="CyanogenMod/android_kernel_samsung_d2" path="kernel/samsung/d2" remote="github" />
        <project name="CyanogenMod/android_hardware_samsung" path="hardware/samsung" remote="github" />
      </manifest>
    • Save and close the file, and again run
      Code:
      repo sync
    • With the S3 specific files downloaded, we need to download the CyanogenMod specific app files. This can be done by running
      Code:
      ./vendor/cm/get-prebuilts
    • With this done, we need to download the cherrypicks specific to the S3. Eventually, these will not be needed, but as CyanogenMod 11 is still in beta, it is needed for now. Because the cherrypicks are often being merged, and new ones created, the kind folks at CyanogenMod have created a Google Document with a list of the latest commits. This is located here. NOTE: This document does not include any cherrypicks that I may include for features. By using these cherrypicks, you are installing everything needed to make the ROM as stable as possible. I may occasionally include other cherrypicks that I find enhance features. Inside the document, scroll down to the '# repopicks' section and continue scrolling past the commit messages. At the bottom, you will see a section titled 'Combined'. This will have a command such as
      Code:
      repopick -s s <List of commit hashes>
    • You could simply copy this command and paste it into a Terminal window, but that would put the cherrypicks on new branches of the source, which could cause problems with resyncing the source. I would recommend copying only the commit numbers.
    • In Terminal, run the command
      Code:
      . build/envsetup.sh
    • Run the repopick command, adding the commit numbers to the end. Here is an example
      Code:
      repopick 53075 53131 53302 53309 53356 53445 53528 53595 53603 53604 53637 53964 54197 54198 54219 53468 54251 54274 54277
    • If the commits do not all merge correctly, you will get what is called a merge conflict. This is because one or more of the commits does not play nice with the CyanogenMod code. Make sure you have the latest code by resyncing, and also make sure you have the latest cherrypicks. If the command still fails, wait a few hours because the document probably just hasn't been updated.
    • Once you get all of the commits merged correctly, it is time to build!



    Building the Source
    • Before building, if you have extra space on your hard drive, you can optionally use CCache to speed up your build a bit. Enable this from inside the working directory by using
      Code:
      export USE_CCACHE=1 && prebuilt/darwin-x86/ccache/ccache -M 20G
    • You may also need to change the ulimit to support building. On OSX 10.9, I experienced errors stating that I had too many files open, and I had to change the ulimit amount. NOTE: If you have issues, you will need to do this every time you build! Change the ulimit amount by running
      Code:
      ulimit -Hn 8192
      and
      Code:
      ulimit -Sn 8192
    • Make sure your working directory is clean by running
      Code:
      make clean
    • Next, initiate the build by running
      Code:
      brunch d2vzw
    • If all goes well you should have a flashable zip in the out/target/product/d2vzw/ folder. Enjoy!



    Updating the Source
    • Later on, you may decide to build another file to see with new changes to the CyanogenMod code. Think of this as a ROM update. To do this, you will need to follow some steps. All of these steps have been completed already in this guide, so I will just be outlining them, and will not be listing everything. If you forget how to do something, consult the guide.
    • Repo sync
    • Apply cherrypicks
    • Enable CCache (Optional)
    • Set the ulimits
    • Clean your working directory using
      Code:
      make clean
    • Build the code using
      Code:
      brunch d2vzw
    18
    Big update tonight. Turns out I've been using the 10.2 msm8960 trees, so this build will have a lot of stability fixes since I switched to the new one. Unfortunately, this will be the last build until Sunday (Maybe even Monday) as I will be out of town for the next couple days. That said, it should be the most stable. And here we go...

    Changes in 12-06 Build:
    -Switched to CM11 msm8960 trees
    msm8960-common: rm device settings
    Build MemTrack HAL
    upgrade to motox 4.4 adreno release
    Add NFC host-based card emulation feature.
    msm8960-common: move egl.cfg to d2/jf trees
    msm8960: Enable QCOM_BSP to fix netflix video
    sepolicy for msm8960-common
    MSM8960-common: enable the full BSP

    A wipe is DEFINITELY recommended for this build since there are so many changes.

    See you guys in a couple days!
    11
    New build up (12-05)

    -Camera image sizes cherrypick got merged
    -Some kernel changes
    -Other CM stuff???