• After 15+ years, we've made a big change: Android Forums is now Early Bird Club. Learn more here.

Root [WIP]Paranoid Android

cmdrdan

Newbie
Dec 6, 2014
42
33
This is an attempt to build Paranoid Android for the LS740, I have no experience in building Android and everything I do here will be figured out as I go. Any help I receive from anyone with more experience than I will be much appreciated. I will keep at this until I get a stable build based on Android 4.4.4 released so that I can learn the ropes after which I will begin working on an Android 5 build. I have midterms coming up so development while not slow will not be as fast as it will after they conclude in a few weeks.

See below post for current development news
 
News:

CHANGELOG:
1/12/15: Everything got corrupted so I am starting over (Drive didn't park in time)
1/18/15: Work halted while I take midterms, alot of errors are fixed
2/14/15: Firstly I am sorry that nothing is happening here but due to a large amount of typing I do I am starting to develop an RSI more commonly known as carpal tunnel. I am in significant pain and until I figure something out I honestly can not keep working on this as I am restricting typing to school work only. I am sorry that I let the community down and once I find a solution I will resume, possibly with a cm12 build but currently I just cannot work on this.
 
Last edited:
Upvote 0
When trying to initialise the repo I am getting this

~$ repo init git://github.com/ParanoidAndroid/manifest.git -b kitkat
/home/daniel/bin/repo: line 2: syntax error near unexpected token `newline'
/home/daniel/bin/repo: line 2: `<!DOCTYPE html>'

Anyone know how to solve this?

Edit:fixed
 
Last edited:
Upvote 0
I just finished a complete sync (Thanks bad_mofo_33) and now I am trying to gather proprietary files as stated in this guide: After you've the complete source, you need some prebuilts & additional props, & the script needs to know of the existence of the device (<device>) you want to compile for.

For additional prebuilts & props extraction, look for a extraction script.
In some devices, we have 'extract-files.sh', in others we have 'proprietary-files.sh'. There might be other names for the script as well. Just go through make sure you know which one it is.


Thanks to elisam98 I have the basis of my local_manifest.xml but I will still need to do the below

figure out the entries I need to make for:
* Create /manifest/<device>.adds
* Create /manifest/<device>.removes
* Create /prebuilt/pa_<device>.conf
* Create /products/pa_<device>.mk,
* Add device makefile entry to /products/AndroidProducts.mk
* Create /vendorprops/<device>.proprietaries
* Add device lunch menu entry to /vendorsetup.sh


After which I can initiate my first build and get preliminaries. Much to my chagrin I found out that paranoidpreferences.apk is closed source and I cannot compile with it which kinda sucks because it is the high level interface for the hybrid engine, luckily I think I can just insert the pre-compiled APK into the zip after I build.

Edit: I am also intrested in how to pack a modified build.prop with the zip so that I can make adjustments to help improve the overall experience.
 
Last edited:
Upvote 0
mine is the only one published as far as i know on github so far, so i'd say use my device, kernel and vendor trees and you should have exactly what i have working on cm11 so far.

https://github.com/touchpro/android_kernel_lge_x5
https://github.com/touchpro/android_device_lge_x5
https://github.com/touchpro/android_vendor_lge_x5

lets say where you repo synced to is called yourfolderyoureposyncedto. i know its not but replace that with what you named it for the paranoid source. place android_device_lge_x5 into your folder you repo synced into, like this:

yourfolderyoureposyncedto/device/lge/x5.

do the same with kernel and vendor, just place them into

yourfolderyoureposyncedto/vendor/lge/x5

and

yourfolderyoureposyncedto/kernel/lge/x5.

and also this one from cyanogenmod goes into yourfolderyoureposyncedto/device/qcom/common:

https://github.com/CyanogenMod/android_device_qcom_common

after that, its just a matter of modifying my device tree to build paranoid with. look for paranoid android's github and look at one of the devices there, like mako for example. see what they did and see whats different from mine to theirs, i dont think you will have to modify boardconfig.mk but there will be other files like cm.dependencies and maybe androidboard.mk, androidproducts.mk, cm.mk, device_x5.mk, full_x5.mk, and vendorsetup.mk.

good luck!
 
Upvote 0
mine is the only one published as far as i know on github so far, so i'd say use my device, kernel and vendor trees and you should have exactly what i have working on cm11 so far.

https://github.com/touchpro/android_kernel_lge_x5
https://github.com/touchpro/android_device_lge_x5
https://github.com/touchpro/android_vendor_lge_x5

lets say where you repo synced to is called yourfolderyoureposyncedto. i know its not but replace that with what you named it for the paranoid source. place android_device_lge_x5 into your folder you repo synced into, like this:

yourfolderyoureposyncedto/device/lge/x5.

do the same with kernel and vendor, just place them into

yourfolderyoureposyncedto/vendor/lge/x5

and

yourfolderyoureposyncedto/kernel/lge/x5.

and also this one from cyanogenmod goes into yourfolderyoureposyncedto/device/qcom/common:

https://github.com/CyanogenMod/android_device_qcom_common

after that, its just a matter of modifying my device tree to build paranoid with. look for paranoid android's github and look at one of the devices there, like mako for example. see what they did and see whats different from mine to theirs, i dont think you will have to modify boardconfig.mk but there will be other files like cm.dependencies and maybe androidboard.mk, androidproducts.mk, cm.mk, device_x5.mk, full_x5.mk, and vendorsetup.mk.

good luck!

thank but I am getting errors fetching your vendor, also wouldn’t vendor and kernel go into the vendor and kernel folders as defined in the local_manifests.xml? which currently looks like


<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="touchpro/android_device_lge_x5" path="device/lge/x5" remote="github" revision="master"/>
<project name="touchpro/android_kernel_device_x5" path="kernel/lge/x5" remote="github" revision="master"/>
<project name="touchpro/android_vendor_lge_x5" path="vendor/lge/x5" revision="master" />
<project name="CyanogenMod/android_device_qcom_common" path="device/qcom/common" revision="cm-11.0" />
</manifest>

edit:nvm forgot to put remote=github in
 
Upvote 0
Also please let me know what kind of build setup you have, processor, memory and ssd or regular hard drive. Once my computer is done building cm11 I'll post how to use ccache to speed up your build if you haven't seen that yet
I have ccache at 25 gigs running on an i7-4790 12gigs of ram with a 7200rpm hybrid hard drive
 
  • Like
Reactions: whoshotjr2006
Upvote 0
still always getting
build/core/tasks/kernel.mk:83: **********************************************************
build/core/tasks/kernel.mk:84: * Kernel source found, but no configuration was defined *
build/core/tasks/kernel.mk:85: * Please add the TARGET_KERNEL_CONFIG variable to your *
build/core/tasks/kernel.mk:86: * BoardConfig.mk file *
build/core/tasks/kernel.mk:87: **********************************************************
make: *** No rule to make target 'bacon'. Stop.

no matter what config I set, current boardconfig.mk for that section looks like:

# Kernel image
BOARD_KERNEL_SEPARATED_DT := true
BOARD_CUSTOM_BOOTIMG_MK := device/lge/x5/mkbootimg.mk
TARGET_KERNEL_SOURCE := kernel/lge/x5
TARGET_BOARD_USE_DTS := msm8226-x5_spr_us
TARGET_KERNEL_CONFIG := x5_spr_us_defconfig
BOARD_KERNEL_CMDLINE := console=ttyHSL0,115200,n8 androidboot.console=ttyHSL0 user_debug=31 msm_rtb.filter=0x37 androidboot.hardware=x5
BOARD_KERNEL_BASE := 0x00000000
BOARD_KERNEL_PAGESIZE := 2048
BOARD_MKBOOTIMG_ARGS := --ramdisk_offset 0x02000000 --tags_offset 0x01e00000
TARGET_REQUIRES_BUMP := true
 
Upvote 0

BEST TECH IN 2023

We've been tracking upcoming products and ranking the best tech since 2007. Thanks for trusting our opinion: we get rewarded through affiliate links that earn us a commission and we invite you to learn more about us.

Smartphones