blob: ca4fc9b698de37139e430f861acdacbaea9427c8 [file] [log] [blame]
Patrickad874112015-12-10 22:26:36 -08001<img src="https://raw.github.com/BlissRoms/platform_manifest/mm6.0/bliss-logo.png">
Chris Soyars878bc022011-11-14 21:41:03 -05002
Patrickad874112015-12-10 22:26:36 -08003Getting Started
Chris Soyars878bc022011-11-14 21:41:03 -05004---------------
5
Patrickad874112015-12-10 22:26:36 -08006To get started with Android/Bliss, you'll need to get
Kevin Cernekee4efef8e2013-06-02 13:30:09 -07007familiar with [Git and Repo](http://source.android.com/source/using-repo.html).
Chris Soyars878bc022011-11-14 21:41:03 -05008
Patrickad874112015-12-10 22:26:36 -08009To initialize your local repository using the Bliss trees, use this command:
Chris Soyars878bc022011-11-14 21:41:03 -050010
Patrick Grabera94a0d12016-03-28 22:23:12 -070011 repo init -u https://github.com/BlissRoms/platform_manifest.git -b new-mm6.0
Chris Soyars878bc022011-11-14 21:41:03 -050012
13Then to sync up:
14
Patrickad874112015-12-10 22:26:36 -080015 repo sync -j#
Chris Soyars878bc022011-11-14 21:41:03 -050016
Dark Eyesaf3b7b72015-12-11 19:52:15 -050017`j#` depends on the number of cpu cores - just use `repo sync` if you are unsure.
Chris Soyars878bc022011-11-14 21:41:03 -050018
Dark Eyesaf3b7b72015-12-11 19:52:15 -050019To build for your device:
Patrickad874112015-12-10 22:26:36 -080020
Dark Eyesaf3b7b72015-12-11 19:52:15 -050021 . build/envsetup.sh
Patrickad874112015-12-10 22:26:36 -080022
Dark Eyesaf3b7b72015-12-11 19:52:15 -050023 breakfast `device name here`
Patrickad874112015-12-10 22:26:36 -080024
Dark Eyesaf3b7b72015-12-11 19:52:15 -050025 brunch `device name here`
Patrickad874112015-12-10 22:26:36 -080026
Dark Eyesaf3b7b72015-12-11 19:52:15 -050027or make it all in one line:
Patrickad874112015-12-10 22:26:36 -080028
Dark Eyesaf3b7b72015-12-11 19:52:15 -050029 . build/envsetup.sh && breakfast `device name here` && brunch `device name here`
Patrickad874112015-12-10 22:26:36 -080030
31For more information on this Github Organization and how it is structured,
Kevin Cernekee4efef8e2013-06-02 13:30:09 -070032please [read the wiki article](http://wiki.cyanogenmod.org/w/Github_Organization)
Chris Soyars878bc022011-11-14 21:41:03 -050033
Patrickad874112015-12-10 22:26:36 -080034***
Chris Soyars878bc022011-11-14 21:41:03 -050035
Patrickad874112015-12-10 22:26:36 -080036Using Build Script
37------------------
Chris Soyars878bc022011-11-14 21:41:03 -050038
Dark Eyesaf3b7b72015-12-11 19:52:15 -050039run command
40
41 . build.sh
42
43and follow the command prompts.
Patrickad874112015-12-10 22:26:36 -080044
45
46GERRIT
47------
48review.blissroms.com
49
Dark Eyesaf3b7b72015-12-11 19:52:15 -050050If 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.
Patrickad874112015-12-10 22:26:36 -080052
53HOW TO SUBMIT TO OUR GERRIT:
54
55First and foremost, setup your github with out Gerrit.
56
57Clone the repo you would like to commit to from the Gerrit [Project List](http://review.blissroms.com:8081/#/admin/projects/)
Dark Eyesaf3b7b72015-12-11 19:52:15 -050058 - Select from the list and copy the clone command line.
Patrickad874112015-12-10 22:26:36 -080059
60Make sure you have git review installed
Dark Eyesaf3b7b72015-12-11 19:52:15 -050061 - `sudo apt-get install git-review` or `sudo pacman -S git-review`
Patrickad874112015-12-10 22:26:36 -080062
63Make sure you are on the correct branch----mm6.0
64
Dark Eyesaf3b7b72015-12-11 19:52:15 -050065Make your change and commit it.
Patrickad874112015-12-10 22:26:36 -080066
67Now 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 Eyesaf3b7b72015-12-11 19:52:15 -050069
Patrickad874112015-12-10 22:26:36 -080070BLISS BUILD FLAGS
71-----------------
72
73These can be added to your device trees BoardConfig.mk
74
75`BLISS_STRICT:= true` "run strict aliasing"
76
Dark Eyesaf3b7b72015-12-11 19:52:15 -050077`BLISS_O3 := true` "run O3 optimizations on build"
Patrickad874112015-12-10 22:26:36 -080078
Dark Eyesaf3b7b72015-12-11 19:52:15 -050079`BLISS_GRAPHITE := true` "run graphite optimizations on build"
Patrickad874112015-12-10 22:26:36 -080080
Dark Eyesaf3b7b72015-12-11 19:52:15 -050081`BLISS_KRAIT := true` "run krait optimizations on build - CPU specific, please verify if you can use this"
Patrickad874112015-12-10 22:26:36 -080082
Dark Eyesaf3b7b72015-12-11 19:52:15 -050083`BLISS_PIPE := true` "This flag has actually no effect on the generated code, but it makes the compilation process faster."
Patrickad874112015-12-10 22:26:36 -080084
Dark Eyesaf3b7b72015-12-11 19:52:15 -050085`TARGET_TC_ROM := "@@"` Specify toolchain for Rom to be compiled with.
Patrickad874112015-12-10 22:26:36 -080086
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
91If 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)`