Building your own ROM

JerryScript

Daydream Believer
Mar 8, 2011
2,055
1,559
0
Visit site
While the rest of you are busy with ICS, I've been adding some customization options to my repository.

I just added these two commits to allow users to change the status bar background:
https://github.com/JerryScript/android_frameworks_base/commit/c3b92aa4875e7998903c354c764c0fdd557658c2
https://github.com/JerryScript/android_packages_apps_CMParts/commit/e1ff61d0c5092aeea1c43e6f9a7616bc99e74001

And recently I added these to allow centering the status bar clock and changing it's color:
https://github.com/JerryScript/android_frameworks_base/commit/ee7047ce4dae7071059b79334d0ba60733eff4d5
https://github.com/JerryScript/android_packages_apps_CMParts/commit/648af6d4c2665548ba329f33124dc7f1984f65b6

I'm working on other customization mods as well. Happy Holidays! ;)
 

thekraven

Well-known member
Nov 10, 2010
1,407
1,148
0
Visit site
Hey Jerry, Is the Date view not working with the latest status bar changes? I see that the Statusbar Date view is commented out in the notification drop down. Will that be worked back in?
 

JerryScript

Daydream Believer
Mar 8, 2011
2,055
1,559
0
Visit site
Hey Jerry, Is the Date view not working with the latest status bar changes? I see that the Statusbar Date view is commented out in the notification drop down. Will that be worked back in?
Yeah, now that I have the center clock animating properly, I can add the date back without overlay issues. ;)
 
  • Like
Reactions: thekraven

JerryScript

Daydream Believer
Mar 8, 2011
2,055
1,559
0
Visit site

sellers86

Well-known member
Jul 21, 2011
1,837
617
0
Visit site
I added this commit last night to fix the date overlay issues with the notification icons. Please note the comment at the bottom of the commit, if you are not using my transparency modifications, you only need to add the last few lines of the commit. What it does is adds an animation to the notification icons when the date's animation is called, both out an in. ;)
https://github.com/JerryScript/android_frameworks_base/commit/c723fa98e4fed052cf52c43bda5ecabed50b8aeb#comments

How do I use these commits. do i repo sync with the url?
 

JerryScript

Daydream Believer
Mar 8, 2011
2,055
1,559
0
Visit site
You would either need to repo sync with my repository, git@github.com:JerryScript/android.git -b gingerbread, or cherry-pick the commits and then merge them in using git. If you haven't set up your local repository with branches and remotes, it would be best for you to sync from my repository.

While I'm getting the hang of git, the only cherry-picking I do is via gerrit with c&p. You'll have to read the git documentation to understand how to cherry-pick what you want. Of course, you can always apply the changes manually, something I've resorted to in the past, but what a pita! ;)
 

Whyzor

Well-known member
Jul 19, 2011
406
176
0
Visit site
I was just going to ask a similar question (building CM7 for the MT), and want to get the upstream latest CM7 updates. Can I just 'repo -init cyanogenmod -b gingerbread' and it'll pull in newer changes, while keeping the same files as my first init to inferiorhumanorgans (or in my case another developer, who stopped updating the CM7 branch). And is there a way to revert these updates in case something doesn't work?
 

JerryScript

Daydream Believer
Mar 8, 2011
2,055
1,559
0
Visit site
No, you need to use git branch, git fetch, and git merge to pull in changes from CM.

git branch mybranch
(create a new branch)
git remote add cyanogen git://github.com/CyanogenMod/PACKAGE_NAME_HERE
(add a new upstream remote)
git fetch cyanogen
(grab the latest change from the remote)
git merge cyanogen mybranch
(merge those change into a new branch)
git checkout mybranch
(loads the files from mybranch, will overwrite any non-commited changes)

Branching allows you to have mutliple repositories changes without overwriting them. ;)
 
  • Like
Reactions: Whyzor

sellers86

Well-known member
Jul 21, 2011
1,837
617
0
Visit site
You would either need to repo sync with my repository, git@github.com:JerryScript/android.git -b gingerbread, or cherry-pick the commits and then merge them in using git. If you haven't set up your local repository with branches and remotes, it would be best for you to sync from my repository.

While I'm getting the hang of git, the only cherry-picking I do is via gerrit with c&p. You'll have to read the git documentation to understand how to cherry-pick what you want. Of course, you can always apply the changes manually, something I've resorted to in the past, but what a pita! ;)

Fetch error when syncing your repo :(
 

tdm

Well-known member
Apr 11, 2011
1,409
3,596
0
Visit site
@JerryScript: I think I've found all the bloat in the ROM that I built.

Half seems to be in the extra languages. I found a commit in your git tree that switches to languages_small.mk.

The other half is in files that you removed: half a dozen apk's, many ringtones, etc. Sorry if this is a noob question, but how do you remove those? Do you disable them via the build system, or do you do an unzip/delete/rezip?
 

thekraven

Well-known member
Nov 10, 2010
1,407
1,148
0
Visit site
Here's the webkit accelerator. Testing it right now. Here's what it is supposed to do. Android Webkit browser accelerated - YouTube


In the BoardConfig.mk add:

WEBCORE_ACCELERATED_SCROLLING := true

And in device_thunderc.mk add

vendor/lge/thunderc/proprietary/$(SUB_MODEL)/system/lib/libwebkitaccel.so:system/lib/libwebkitaccel.so \
vendor/lge/thunderc/proprietary/$(SUB_MODEL)/system/lib/libwebkitaccel.so:eek:bj/lib/libwebkitaccel.so


Then place the libwebkitaccel.so in your vendor/lge/thunderc/proprietary/VM670/system/lib folder.

Grab the file from [MOD] HW Acceleration for CM7/AOSP Browser [Tested working] - xda-developers.
 

JerryScript

Daydream Believer
Mar 8, 2011
2,055
1,559
0
Visit site
@JerryScript: I think I've found all the bloat in the ROM that I built.

Half seems to be in the extra languages. I found a commit in your git tree that switches to languages_small.mk.

The other half is in files that you removed: half a dozen apk's, many ringtones, etc. Sorry if this is a noob question, but how do you remove those? Do you disable them via the build system, or do you do an unzip/delete/rezip?

I disable them in the build, for audio files, you have to delete from 5 different AudioPackage mk files. They are located in frameworks/base/data/sounds ;)
 

thekraven

Well-known member
Nov 10, 2010
1,407
1,148
0
Visit site
CM7 testing: Handset mic with no-mic headphones. Getting closer, I can make calls with normal headphones with no mic, and use the phone mic. Regular headset with mic functions properly.

  • Currently works with the modification of the headsetobserver.java in the frameworks, resides in the Services.jar. Testing a few kernel fixes too with htc_headset.c and msm7x30.c patches, but may not be necessary.
  • known issue with Skype calls, when it connects the sound routes to the phone ear speaker. Just unplug and plug in the headphones/rca adapter. I might need help with this one.
  • Once I get organized, maybe after Christmas, I'll share what i got.
 
Last edited:

thekraven

Well-known member
Nov 10, 2010
1,407
1,148
0
Visit site
In building for the headset fix. THis comes from the CM6 HTC magic peeps. They just about had it all worked out till CM7 came out and I lost track of the development after that. Issue 1582 - cyanogenmod - On Phone Mic Not Working with 3.5mm Plugged Into Line Out with No Built in Mic, Unplugging Jack In-Call Mutes Mic on Phone (MT3G 1.2) - CyanogenMod Android ROM - Google Project Hosting


Just two lines need changing in the file frameworks/base/services/java/com/android/server/headsetobserver.java

Code:
private static final int BIT_HEADSET = (1 << 0);
private static final int BIT_HEADSET_NO_MIC = (1 << 1);

//change to

private static final int BIT_HEADSET = (1 << 1);
private static final int BIT_HEADSET_NO_MIC = (1 << 0);
That's it for building Cm7. We still need kernel work. I'll upload what i compiled over the 3.4 BobZhomes kernel for testers.

This is the starting point. We still need to work on getting CM7 to recognize the icon change in the status bar, but this properly allows the handset mic to work with regular headphones. And headsets with mic work.

Then for the kernel building. Thanks to the work of Ksatta. Grab msm7x30.c from franco's https://github.com/franciscofranco/...f8f4a3d65a68f64b96a04/sound/soc/msm/msm7x30.c

And grab htc_headset.c from below.. just rename htc_headset.zip to htc_headset.c and place in /arch/arm/mach-msm/ folder . Still looking for the correct source of this file. Will update the link.

edit here's the link https://github.com/CyanogenMod/cm-kernel/blob/android-msm-2.6.35/arch/arm/mach-msm/htc_headset.c
 
Last edited:
  • Like
Reactions: mrg666 and BobZhome

JerryScript

Daydream Believer
Mar 8, 2011
2,055
1,559
0
Visit site
Here's the webkit accelerator. Testing it right now. Here's what it is supposed to do. Android Webkit browser accelerated - YouTube


In the BoardConfig.mk add:

WEBCORE_ACCELERATED_SCROLLING := true

And in device_thunderc.mk add

vendor/lge/thunderc/proprietary/$(SUB_MODEL)/system/lib/libwebkitaccel.so:system/lib/libwebkitaccel.so \
vendor/lge/thunderc/proprietary/$(SUB_MODEL)/system/lib/libwebkitaccel.so:eek:bj/lib/libwebkitaccel.so


Then place the libwebkitaccel.so in your vendor/lge/thunderc/proprietary/VM670/system/lib folder.

Grab the file from [MOD] HW Acceleration for CM7/AOSP Browser [Tested working] - xda-developers.

So you have not added the libwebcore.so from that mod package? And it works fine with our libwebcore.so? Or did you replace ours with the one from the modified package?
 

thekraven

Well-known member
Nov 10, 2010
1,407
1,148
0
Visit site
Not yet. Been testing the single file for a few days. I will push the 2nd file and test it tonight. Any website suggestions to test?
 

JerryScript

Daydream Believer
Mar 8, 2011
2,055
1,559
0
Visit site
Well my first attempt built a borked webkit, nothing that calls a webview works, email, browser, etc. It seems as if both libraries would be necessary, but you have no issues with just the one?

I'm building right now with both libraries added, will report in about an hour.