• Announcements

    • Reminder - MoDaCo position on illegal content   07/30/15

      ILLEGAL CONTENT I'd like to just reaffirm MoDaCo's position regarding piracy and illegal content in the light of some recent questions / postings. Posts will be censored by myself or my moderation team if the contain or link to: Illegal / pirated / cracked software or sites that host such softwareNintendo emulators / ROMs or sites hosting them (in light of Nintendo's legal stance)CUSTOM ROMS You may discuss and post links to custom device ROMs on MoDaCo, provided the following rules are adhered to: ROMs must not contain any illegal 3rd party software (this includes trial versions included without permission)ROMs must give full credit to the original authorISSUES If you have any issues with this policy, please contact PaulOBrien directly via PM.
    • Reminder: Selling items on the forum directly is not allowed   07/30/15

      Please note that selling items on the forum directly is not allowed by the forum rules. There is a forum for eBay auctions whereby you can list the items on eBay and link to them there. This is the ONLY forum for this type of activity. You may also advertise links to the eBay forum in your signature. Please note that selling directly in contravention of these rules will result in a warning / suspension / ban.
Sign in to follow this  
Followers 0

Questions about building CM from source

14 posts in this topic

Posted

Hi all,

Few questions regarding building cm, I've read the cyanogenomod building wiki for blade, and I've read from several post that we need to use mooncake files (I'm assuming that means deadlink's device_mooncake files), now my questions:

- From cyanogenomod's wiki, the "Copy propietary files", is this needed? if it is, what to do here? I don't think it's as in the wiki (i.e. cd android/system/device/zte/blade/ && ./extract-files.sh, should it be the extract-files.sh from deadlink's file right?)

- From deadlink's files, the structure is pretty much the same as cyanogen blade, but what to do with the files? Do I need to replace the blade files with the ones from deadlink or do I need to create an android/system/device/zte/mooncake/ and place deadlink's files in there?

- Whatever the answers for the previous questions, I assume that I still need to run build/envsetup.sh && brunch blade right? since cyanogen doesn't know anything about a "mooncake/racer" device

So that's it, whatever info or tips anyone can provide will be appreciated :)

1

Share this post


Link to post
Share on other sites

Posted (edited)

Well, I'll answer my self I guess....

- From cyanogenomod's wiki, the "Copy propietary files", is this needed? if it is, what to do here? I don't think it's as in the wiki (i.e. cd android/system/device/zte/blade/ && ./extract-files.sh, should it be the extract-files.sh from deadlink's file right?)

Yes, the extract files part is needed otherwise cyanogenmod will fail to compile propietary files since it doesn't have rules in the .mk files for those. The extract-files.sh must be the one from mooncake folder.

- From deadlink's files, the structure is pretty much the same as cyanogen blade, but what to do with the files? Do I need to replace the blade files with the ones from deadlink or do I need to create an android/system/device/zte/mooncake/ and place deadlink's files in there?

Need to create a mooncake folder in device/zte/ and put that files in there.

- Whatever the answers for the previous questions, I assume that I still need to run build/envsetup.sh && brunch blade right? since cyanogen doesn't know anything about a "mooncake/racer" device

Not quite, after searching I found this repo on github (props to elgomes for making it) and that give me the missing clue, changes are needed on vendor/ folders so cyanogenmod knows what to do when you tell it "brunch mooncake". Had to change cyanogen_mooncake.mk from vendor/cyanogen/products since it'll try to copy a bootanimation.zip for hdpi devices and racer is ldpi

Also, the kernel needs to be changed from deadlink's files since it's for blade. Don't know that to do regarding recovery_kernel since that is for blade as well, if I need to change it I don't know for which one.

Edited by GuyOverThere
2

Share this post


Link to post
Share on other sites

Posted

i had issues with modaco for 2 days now :o yeah i wanted to tell you its best to make a mooncake folder and edit files for builds, adding path etc etc, thats the way i did it too before.. well im late so nvm, glad you figured it out :P

thanks for that git too, ill give it a look.. since it has mooncake libsensors any chance you can test it if you built it? if its different than the one we use, it might actually fix the compass thing

1

Share this post


Link to post
Share on other sites

Posted (edited)

oh boy... I did build but using deadlink's mooncake files O: what I took from elgomes' repo was the cyanogen parts, so no, can't test libsensors, I can try a build tonight using those mooncake files or at least check if there are differences between elgomes' and deadlink ones (no, didn't check that either :c was busy still trying to make a kernel that boots)

Meanwhile I can check differences between files while I'm at work and post whatever I find

Edited by GuyOverThere
1

Share this post


Link to post
Share on other sites

Posted (edited)

Let's see...

There are difference in nusensors (.cpp and header) and sensors (sensors.c), elgome's libsensors uses taos (proximity sensor I believe?) while deadlink's don't, however, after seeing this:

elgomes sensors.c

sensors.c:Line 78: .name = "ZTE Blade Sensors Module",

sensors.c:Line 79: .author = "Tom Giordano",


deadlink sensors.c


sensors.c:Line 68: .name = "ZTE Racer Sensors Module",

sensors.c:Line 69: .author = "Tom Giordano, deadlink",

I'm not really sure if elgomes' files are pure blade and the inclusion of taos is only required for blade phones (or if is needed by compass...)

Excluding nusensors.* and sensors.c (and the only difference between those being the use of taos), the files are the same, of course, elgomes' include taos related files while deadlink doesn't

I'll try to build tonight using elgomes' files nevertheless unless of course someone else does it and reports that it doesn't work :P

Edited by GuyOverThere
1

Share this post


Link to post
Share on other sites

Posted

well i'd try but i dont have repo synced on my box since i formated it few times :( if you build those libs, do report but after what you said i have a feeling its more of a blade thing than racer.. then again who knows, deadlink noted 'maybe something not good but rom booted' so lol..

0

Share this post


Link to post
Share on other sites

Posted

well i'd try but i dont have repo synced on my box since i formated it few times :( if you build those libs, do report but after what you said i have a feeling its more of a blade thing than racer.. then again who knows, deadlink noted 'maybe something not good but rom booted' so lol..

yeah I'll test tonight when I get home and report anything I find.

0

Share this post


Link to post
Share on other sites

Posted

Build & test done, elgomes' file are definitely blade only.

Here's a more complete diff if you're interested: http://pastebin.com/fsNHfLhr

0

Share this post


Link to post
Share on other sites

Posted

So....where you up to (seems to be spread over threads)...i may be able to help with some things

0

Share this post


Link to post
Share on other sites

Posted

So....where you up to (seems to be spread over threads)...i may be able to help with some things

:D hello! well, I'm almost done, there are a few things I'll like to know though

1) Does a rom/build needs something special to be gen1/gen2 compatible? or this is just a kernel thing? (for instance... as long as the kernel supports the gen2 device, doesn't matter to the rom?)

2) I've seen kernel sources that have an AndroidKernel.mk and this file is use to build the kernel as part of the cyanogenmod build process but how exactly do I use it? I mean, where do I put the kernel sources and do I need to modify other files (like BoardConfig.mk, Android.mk...) to include this AndroidKernel.mk?

0

Share this post


Link to post
Share on other sites

Posted

1) they use different rild addresses so you need different libril and libcm

2) dunno, didnt mess much with kernel

0

Share this post


Link to post
Share on other sites

Posted (edited)

1) they use different rild addresses so you need different libril and libcm

I notice that from deadlink's flashable zip, vamshi's one doesn't have those though or at least I don't see it in the updater-script, so if I give a rom using vamshi's kernel by default, do I need to modify the updater-script to copy the correct ril/libcm if is gen2 or something?

Edited by GuyOverThere
0

Share this post


Link to post
Share on other sites

Posted

well if you include those files then yeah, depends if you are making both gen1/gen2 support.. you can just take my script and kernel folders, i use both gen1/gen2 vamshi in that, you can take a look

0

Share this post


Link to post
Share on other sites

Posted

well if you include those files then yeah, depends if you are making both gen1/gen2 support.. you can just take my script and kernel folders, i use both gen1/gen2 vamshi in that, you can take a look

Much appreciated, I'll really like not to get in the gen2 support since I don't have a gen2 phone to test things but all the roms are gen1/gen2 so better to continue the tradition :P

0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0

MoDaCo is part of the MoDaCo.network, © Paul O'Brien 2002-2015. MoDaCo uses IntelliTxt technology.