Skip to content

Latest commit

 

History

History
101 lines (62 loc) · 4.63 KB

README.mkdn

File metadata and controls

101 lines (62 loc) · 4.63 KB

xosp_generic_banner_git

Getting Started

In order to build XOSP for your device, first of all you need to get familiar with Git and Repo.

To initialize your local repository using the XOSP trees, use a command like this:

repo init -u git://github.com/XOSP-Project/platform_manifest.git -b xosp-n-rebase

Then to sync up:

repo sync -c -f -j<number_of_threads> --force-sync --no-clone-bundle --no-tags

Contributing to XOSP

We love contributions from the community so if you want to submit patches you can do it by pushing on our gerrit: review.xosp.org:8081

  • First make sure that your Name and Email are named globally on Git:

    $ git config --global user.name "YourName"
    $ git config --global user.email "YourEmail"
    
  • Create a SSH Key and add it to your Gerrit Profile, otherwise you will not be able to push your changes, to do so just follow the steps foundable here: https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/

  • Now, select the repo/s you're interested to contribute to from here: http://review.xosp.org:8081/#/admin/projects/

  • Clone it with the SSH method like here for example:

    $ git clone ssh://your_username@review.xosp.org:29418/your_repo
    
  • Make your changes and commit as usual,when pusing do like this:

    $ git push origin HEAD:refs/for/xosp-n-rebase
    
  • Perfect! you now uploaded your very first patch on Gerrit. Please allow time for it to be verified, depending by the change it could take from very less to very much time

  • If you want to assign a topic to your commit just push the commit as follow:

    $ git clone ssh://your_username@review.xosp.org:29418/your_repo -o topic=your_topic
    
  • If you made mistakes or new changes were made to the current commit just use amend:

    $ git add -A
    $ git commit -s --amend --no-edit
    

If you're on Linux you can use directly the command git-review to push instead of git push which is much more automated

Building XOSP for your device

Build Environment

  • Tested and Working on any version of Ubuntu - 15.10 & 16.04 16.10 (64-bit)
  • Any other distribution based of the Ubuntu Distro such as Lubuntu, Xubuntu and etc.
  • A Terminal window
  • A Good specs of hardware like 8 GB of RAM and an Intel I3 dual core (Minimum)
  • A storage unit of any kind (minimum 100 GB). It would be better to use SSD because is more fast during the compliation process
  • Some dependencies that should be installed

Building XOSP ROM for your device

  • Preparing Required Binaries and Device Drivers
  • Set CCache for Faster Building (Optional)
  • Build phase

Set CCache

  $ export USE_CCACHE=1
  $ prebuilts/misc/linux-x86/ccache/ccache -M 150G

Congratulations,the sources are initialized!

Preparing XOSP for your device

To know how to include propietary vendors files from your device, follow this guide which explains everything you need to know: (http://forum.xda-developers.com/showpost.php?p=54118631&postcount=4)

Once you finished setting up your device tree, you will need to add this line into the xosp.mk of your device:

  $(call inherit-product, vendor/xosp/config/xosp.mk)

If you want to include ROOT support in your build you will have to specify a parameter in xosp.mk which includes 2 possibilities: "supersu" and "magisk":

  ROOT_METHOD := supersu OR ROOT_METHOD := magisk

To build XOSP ROM

  $ cd ~/XOSP
  $ source build/./envsetup.sh
  $ brunch <device> -j<number_of_threads>   (USE brunch ALWAYS!)

Obtaining the zip created from the build process

To get the zip file that has been built, navigate to the out directory and find for the zip file there. If you found it, then congratulations! If you didn't, try retrying the build process but before doing so, ensure you do the following:

  $ cd ~/XOSP
  $ make clean

When you done the initialization once you're free to build now without making that again.

For those who finally get the compilation process done

Well you made it my friend, after all these hours passed now you finally got the ROM ready to be flashed through the recovery of your device. Share it on XDA or on every forum,blog site etc... (as you wish). We expect you to contribute as well and to give credits to the XOSP Team and their contributors! Don't forget to sync your repo everytime and build XOSP more than just one because the source get changed almost everyday with new fixes or new features. Don't hesitate to make pull requests because we will take them all in consideration.