Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 1 | <img src="https://raw.github.com/BlissRoms/platform_manifest/mm6.0/bliss-logo.png"> |
Chris Soyars | 878bc02 | 2011-11-14 21:41:03 -0500 | [diff] [blame] | 2 | |
Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 3 | Getting Started |
Chris Soyars | 878bc02 | 2011-11-14 21:41:03 -0500 | [diff] [blame] | 4 | --------------- |
| 5 | |
Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 6 | To get started with Android/Bliss, you'll need to get |
Kevin Cernekee | 4efef8e | 2013-06-02 13:30:09 -0700 | [diff] [blame] | 7 | familiar with [Git and Repo](http://source.android.com/source/using-repo.html). |
Chris Soyars | 878bc02 | 2011-11-14 21:41:03 -0500 | [diff] [blame] | 8 | |
Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 9 | To initialize your local repository using the Bliss trees, use this command: |
Chris Soyars | 878bc02 | 2011-11-14 21:41:03 -0500 | [diff] [blame] | 10 | |
Patrick Graber | a94a0d1 | 2016-03-28 22:23:12 -0700 | [diff] [blame] | 11 | repo init -u https://github.com/BlissRoms/platform_manifest.git -b new-mm6.0 |
Chris Soyars | 878bc02 | 2011-11-14 21:41:03 -0500 | [diff] [blame] | 12 | |
| 13 | Then to sync up: |
| 14 | |
Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 15 | repo sync -j# |
Chris Soyars | 878bc02 | 2011-11-14 21:41:03 -0500 | [diff] [blame] | 16 | |
Dark Eyes | af3b7b7 | 2015-12-11 19:52:15 -0500 | [diff] [blame] | 17 | `j#` depends on the number of cpu cores - just use `repo sync` if you are unsure. |
Chris Soyars | 878bc02 | 2011-11-14 21:41:03 -0500 | [diff] [blame] | 18 | |
Dark Eyes | af3b7b7 | 2015-12-11 19:52:15 -0500 | [diff] [blame] | 19 | To build for your device: |
Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 20 | |
Dark Eyes | af3b7b7 | 2015-12-11 19:52:15 -0500 | [diff] [blame] | 21 | . build/envsetup.sh |
Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 22 | |
Dark Eyes | af3b7b7 | 2015-12-11 19:52:15 -0500 | [diff] [blame] | 23 | breakfast `device name here` |
Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 24 | |
Dark Eyes | af3b7b7 | 2015-12-11 19:52:15 -0500 | [diff] [blame] | 25 | brunch `device name here` |
Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 26 | |
Dark Eyes | af3b7b7 | 2015-12-11 19:52:15 -0500 | [diff] [blame] | 27 | or make it all in one line: |
Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 28 | |
Dark Eyes | af3b7b7 | 2015-12-11 19:52:15 -0500 | [diff] [blame] | 29 | . build/envsetup.sh && breakfast `device name here` && brunch `device name here` |
Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 30 | |
| 31 | For more information on this Github Organization and how it is structured, |
Kevin Cernekee | 4efef8e | 2013-06-02 13:30:09 -0700 | [diff] [blame] | 32 | please [read the wiki article](http://wiki.cyanogenmod.org/w/Github_Organization) |
Chris Soyars | 878bc02 | 2011-11-14 21:41:03 -0500 | [diff] [blame] | 33 | |
Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 34 | *** |
Chris Soyars | 878bc02 | 2011-11-14 21:41:03 -0500 | [diff] [blame] | 35 | |
Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 36 | Using Build Script |
| 37 | ------------------ |
Chris Soyars | 878bc02 | 2011-11-14 21:41:03 -0500 | [diff] [blame] | 38 | |
Dark Eyes | af3b7b7 | 2015-12-11 19:52:15 -0500 | [diff] [blame] | 39 | run command |
| 40 | |
| 41 | . build.sh |
| 42 | |
| 43 | and follow the command prompts. |
Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 44 | |
| 45 | |
| 46 | GERRIT |
| 47 | ------ |
| 48 | review.blissroms.com |
| 49 | |
Dark Eyes | af3b7b7 | 2015-12-11 19:52:15 -0500 | [diff] [blame] | 50 | If you would like to contribute to the Bliss project submit patches to |
| 51 | `review.blissroms.com`. Then head into the project and clone it locally, make changes and push back to Bliss review. |
Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 52 | |
| 53 | HOW TO SUBMIT TO OUR GERRIT: |
| 54 | |
| 55 | First and foremost, setup your github with out Gerrit. |
| 56 | |
| 57 | Clone the repo you would like to commit to from the Gerrit [Project List](http://review.blissroms.com:8081/#/admin/projects/) |
Dark Eyes | af3b7b7 | 2015-12-11 19:52:15 -0500 | [diff] [blame] | 58 | - Select from the list and copy the clone command line. |
Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 59 | |
| 60 | Make sure you have git review installed |
Dark Eyes | af3b7b7 | 2015-12-11 19:52:15 -0500 | [diff] [blame] | 61 | - `sudo apt-get install git-review` or `sudo pacman -S git-review` |
Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 62 | |
| 63 | Make sure you are on the correct branch----mm6.0 |
| 64 | |
Dark Eyes | af3b7b7 | 2015-12-11 19:52:15 -0500 | [diff] [blame] | 65 | Make your change and commit it. |
Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 66 | |
| 67 | Now just type git review, if it does not have the remote yet it will automatically add it and just answer yes to its questions. It will push to the gerrit for you. |
| 68 | |
Dark Eyes | af3b7b7 | 2015-12-11 19:52:15 -0500 | [diff] [blame] | 69 | |
Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 70 | BLISS BUILD FLAGS |
| 71 | ----------------- |
| 72 | |
| 73 | These can be added to your device trees BoardConfig.mk |
| 74 | |
| 75 | `BLISS_STRICT:= true` "run strict aliasing" |
| 76 | |
Dark Eyes | af3b7b7 | 2015-12-11 19:52:15 -0500 | [diff] [blame] | 77 | `BLISS_O3 := true` "run O3 optimizations on build" |
Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 78 | |
Dark Eyes | af3b7b7 | 2015-12-11 19:52:15 -0500 | [diff] [blame] | 79 | `BLISS_GRAPHITE := true` "run graphite optimizations on build" |
Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 80 | |
Dark Eyes | af3b7b7 | 2015-12-11 19:52:15 -0500 | [diff] [blame] | 81 | `BLISS_KRAIT := true` "run krait optimizations on build - CPU specific, please verify if you can use this" |
Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 82 | |
Dark Eyes | af3b7b7 | 2015-12-11 19:52:15 -0500 | [diff] [blame] | 83 | `BLISS_PIPE := true` "This flag has actually no effect on the generated code, but it makes the compilation process faster." |
Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 84 | |
Dark Eyes | af3b7b7 | 2015-12-11 19:52:15 -0500 | [diff] [blame] | 85 | `TARGET_TC_ROM := "@@"` Specify toolchain for Rom to be compiled with. |
Patrick | ad87411 | 2015-12-10 22:26:36 -0800 | [diff] [blame] | 86 | |
| 87 | `TARGET_TC_KERNEL := "@@"` Specify toolchain for kernel to be complied with. |
| 88 | |
| 89 | @@= Toolchains are located in prebuilts/gcc/linux-x86/arm You only need to specify the end number be it 4.8-sm for 4.8 SaberMod Toolchain, this goes for both ROM and KERNEL. |
| 90 | |
| 91 | If you use TARGET_TC_ROM and/or TARGET_TC_KERNEL, please add the following to BoardConfig.mk as well |
| 92 | |
| 93 | `TARGET_GCC_VERSION_EXP := $(TARGET_TC_ROM)` |
| 94 | |
| 95 | `TARGET_KERNEL_CUSTOM_TOOLCHAIN := $(TARGET_TC_KERNEL)` |