[DEV][WIP]Building ICS for the OV

JerryScript

Daydream Believer
Mar 8, 2011
2,055
1,559
0
Visit site
I got an answer about making the kernel as part of the build.
I don't like it, because I'm supposed to download at least 1/2 GB to look at the source files referenced (which will take me until tomorrow to finish syncing, probably,) but at least it's an answer of some kind.
Hopefully it's not just a copy of a pre-built kernel he's referring to, but even if it is it should help with the copy problem in BobZhome's ics build.

I'll be asking there for alternative methods if my theory about tuna using a prebuilt kernel is correct. I won't know until I can successfully sync the stupid bloated tuna/maguro device folders in my personal copy of the repo. I deliberately took that cruft out of the manifest to give the repo a better chance of downloading over my slow connection.

edit: oooh, nevermind my cursing! CM has the tuna and maguro devices on github, so I can just browse that junk.
the appropriate part of device.mk:
Code:
ifeq ($(TARGET_PREBUILT_KERNEL),)
LOCAL_KERNEL := device/samsung/tuna/kernel
else
LOCAL_KERNEL := $(TARGET_PREBUILT_KERNEL)
endif
Looks like it'll handle either prebuilt or build it as part of the product if I can figure out how to set TARGET_PREBUILT_KERNEL correctly. Too bad I have to request again the specific information I thought I asked for clearly in the first post there...

There is a device folder in /build/tools that has some templates to follow that I think may help, though I haven't tested yet. The BoardConfig.mk.template shows that you can add the following to /build/target/board/<generic_armv5>/BoardConfig.mk (or whichever you are using):
Code:
TARGET_PREBUILT_KERNEL := device/__MANUFACTURER__/__DEVICE__/kernel
 
  • Like
Reactions: bigsupersquid
Feb 19, 2011
1,971
284
0
Visit site
There is a device folder in /build/tools that has some templates to follow that I think may help, though I haven't tested yet. The BoardConfig.mk.template shows that you can add the following to /build/target/board/<generic_armv5>/BoardConfig.mk (or whichever you are using):
Code:
TARGET_PREBUILT_KERNEL := device/__MANUFACTURER__/__DEVICE__/kernel
funny thing is that they put the kernel copy command in device.mk for tuna.
maybe I'll fiddle with TARGET_PREBUILT_KERNEL := device/__MANUFACTURER__/__DEVICE__/kernel and try to get it to build.
As that line stands it looks like it's just set to copy a prebuilt kernel, like they did with tuna... or it'd be
TARGET_PREBUILT_KERNEL := kernel
since that's where the kernel source is supposed to live, not in the device folder. I'm gonna try that real quick and see if it errors.
thanks much for the pointer to the templates and the code there.

edit: a quick response from JBQ this time:
JBQ said:
Ah, sorry I missed that part. There's no mechanism in the build system
to build the kernel "live" (it's not portable enough and not scalable
enough), and all Android work at Google has always been done with
prebuilt kernels (or at least as far as I can remember).

You might need to add support for what you're trying to do directly in
the core build system.

JBQ
So what I want to do is unsupported, like my choice of operating system :p
I bet it can work somehow though. I tried TARGET_PREBUILT_KERNEL := kernel in BoardConfig.mk, and, while it didn't crash with an error, it didn't try to build the kernel either. Usually it does that first, so I'm guessing it won't work like I want without some major tweaking. Ah, well.
 
Last edited:

BobZhome

Well-known member
Mar 27, 2011
296
627
0
Visit site
touchscreen and accelerometer fixes for ics[/URL] (thanks vienti) into the kernel so it needs to be rebuilt anyway.
edit: I submitted it to Android Building | Google Groups to see if someone knows of a solution, since ICS is too new for me to get many relevant search results to oddball problems. First post there, hopefully I'm not eaten alive for overlooking something stupid!
I built a kernel with that touchscreen and accelerometer fix last night. I just tested it and I could get off the lock screen, the IHO kernel runs better.
---------------------------------------------------------------------------
EDIT: I have 'TARGET_PREBUILT_KERNEL := device/lge/thunderc/files/kernel/VM670/kernel' in BoardConfig.mk...line 79 here: https://github.com/BobZhome/android_device_lge_thunderc/blob/ics/BoardConfig.mk
I also have
ifeq ($(TARGET_PREBUILT_KERNEL),)
LOCAL_KERNEL := device/lge/thunderc/kernel
else
LOCAL_KERNEL := $(TARGET_PREBUILT_KERNEL)
endif

# These are the hardware-specific features

PRODUCT_COPY_FILES := \
$(LOCAL_KERNEL):kernel
in device.mk lines 21-30 here: https://github.com/BobZhome/android_device_lge_thunderc/blob/ics/device.mk
I purposely used no kernel folder here just in case it was messing things up.
 
Last edited:

BobZhome

Well-known member
Mar 27, 2011
296
627
0
Visit site
Go sign...at least I see copied files being rejected:
Code:
Checking build tools versions...
build/core/Makefile:25: warning: overriding commands for target `out/target/product/thunderc/system/lib/hw/gralloc.default.so'
build/core/base_rules.mk:523: warning: ignoring old commands for target `out/target/product/thunderc/system/lib/hw/gralloc.default.so'
build/core/Makefile:25: warning: overriding commands for target `out/target/product/thunderc/system/lib/libril.so'
build/core/base_rules.mk:523: warning: ignoring old commands for target `out/target/product/thunderc/system/lib/libril.so'
build/core/Makefile:25: warning: overriding commands for target `out/target/product/thunderc/system/bin/rild'
build/core/base_rules.mk:523: warning: ignoring old commands for target `out/target/product/thunderc/system/bin/rild'
 
  • Like
Reactions: bdfull3r

JerryScript

Daydream Believer
Mar 8, 2011
2,055
1,559
0
Visit site
Go sign...at least I see copied files being rejected:
Code:
Checking build tools versions...
build/core/Makefile:25: warning: overriding commands for target `out/target/product/thunderc/system/lib/hw/gralloc.default.so'
build/core/base_rules.mk:523: warning: ignoring old commands for target `out/target/product/thunderc/system/lib/hw/gralloc.default.so'
build/core/Makefile:25: warning: overriding commands for target `out/target/product/thunderc/system/lib/libril.so'
build/core/base_rules.mk:523: warning: ignoring old commands for target `out/target/product/thunderc/system/lib/libril.so'
build/core/Makefile:25: warning: overriding commands for target `out/target/product/thunderc/system/bin/rild'
build/core/base_rules.mk:523: warning: ignoring old commands for target `out/target/product/thunderc/system/bin/rild'
So copying those to the appropriate out folders should work for now, right?
 
  • Like
Reactions: mustafu

sellers86

Well-known member
Jul 21, 2011
1,837
617
0
Visit site
If you guys need any help I can attempt. This is the whole reason I wanted to learn to build from source in the first place is so I could build and ICS ROM. I can test or even attempt to build.
 

BobZhome

Well-known member
Mar 27, 2011
296
627
0
Visit site
So copying those to the appropriate out folders should work for now, right?
Yep, did that...but now that's it's copying my files, I'm getting stops. ICS does not like the overlays!

If you guys need any help I can attempt. This is the whole reason I wanted to learn to build from source in the first place is so I could build and ICS ROM. I can test or even attempt to build.
I don't hide anything, your welcomed to clone my git.
 
  • Like
Reactions: mustafu
Feb 19, 2011
1,971
284
0
Visit site
@Bob:
I had to remove most of the overlays to get GB or ICS to compile with the thunderc folders at all.
'course, I wasn't using any CM source in the repo at the time, so I was kind of hoping using your manifest would take care of that...
I removed all but framesworks/base/core/res/res/xml/eri.xml and packages/apps/MMS/res/xml/mms_config.xml to get pure AOSP to build without griping about the overlays.
you could also manually edit out the parts that error from each file in the overlay as it stops compiling, but I got really tired of that process and went for overkill, leaving in the 2 files I was pretty sure were needed. Probably don't need to wipe out the whole set of files... it will at least compile if you do though.

On day 3 of trying to sync your manifest.... my connection sucks!
and repo sucks too, since it downloads hundreds of MB from a single project, then stops downloading without showing any kind of error and just hangs there for hours, has to be restarted, and ignores all the data it already downloaded from that project and begins it again from point zero.

edit: woo! finally finished getting the repo. Can't imagine how much longer it would've taken if I hadn't removed device/tuna and device/maguro from the manifest (tuna's over 500MB by itself, haven't tried to download that puppy yet.)
BTW, I also removed the NFC app from the manifest, since the OV doesn't have the capability to use it.
 
Last edited:

tony5593

Well-known member
Mar 1, 2011
201
15
0
Visit site
Hey, how can i try this? If its even possible? & What program do you guys use to mess with code? Id really like to learn.

Sent from my LG-VM670 using Tapatalk
 

bdfull3r

Well-known member
May 11, 2011
290
24
0
Visit site
CM has an ICS daily driver ready for at least one phone:
Unofficial Android Build CyanogenMod Gets An Ice Cream Sandwich


I like the article and it points to the relatively stable build on the Nexus S that i am almost positive will jump start a lot of hummingbird phones.

My problem after reading this article is its constant reliance on calling unofficial Android insecure.
And what baffles me is the example in there is a phone with 1.4(i think it was a type for 1.5) but can run 2.3.7.

Donut to Eclair to Froyo to Gingerbread. ONe constant inprovement is secuity. Every new version of Android patches known security flaws and some of them very dangerous flaws. If i can stay current AND secure, damn right i am going to root. It was my primary reason for rooting my OV

Sorry for getting away from topic but i felt like saying it
 

thewraith420

Well-known member
Sep 6, 2011
1,987
223
63
Visit site
Just thought this needed a bump back to the top :) loving the IHO builds and can't wait to see what you can come up with for ICS. Keep up the great work.

Sent from my LG-VM670 using BACKside IHO 1122
 

drezliok

Well-known member
Mar 12, 2011
451
54
0
Visit site
Any progress updates? :)

Development hasn't stalled or anything. These Geniuses just have lives to live. Plus it's the holiday season, I don't expect a daily driver until about February.

I believe they've started work on CM9 also.
The CyanogenMod Team has to get so far and then Team I.H.O. has to take that to get get things to work.
 

Members online

Forum statistics

Threads
943,173
Messages
6,917,633
Members
3,158,861
Latest member
dumpsterrentals38