Building Unlegacy Android - Samsung Galaxy Nexus

Hi all,
not sure if this is the correct place to post, please move it in case this should be in another forum.
Im planning on start building my own rom based on Unlegacy for my maguro. Havent found anything specific to this project so once im done i will document how to get it done so that others can use it as a reference.
Have been reading over the weekend and i think im quite clear how this works even if it would be the first time i do sth. like this in android world. So please bear with me !
I have contributed several times to the linux kernel and gentoo linux and developed for some other (closed source) projects many years ago which means im an old school guy and im completely disonnected from "modern" development.
I know how to build, patch, debug c and so on but i have almost zero knowledge about git and some of the other tools that are used nowadays. Furthermore i have almost no idea about android itself, im planning on reading more about it to at least know what im doing before getting messy.
Here my first questions, more to come im sure :
- first things first : is there documentation available somewhere specific to this project ?
- im syncing right now. So far it has downloaded 36 GB and repo says it is at 93 % ... is this normal ??? I know android projects are huge but this sounds to me like im doing sth. wrong. Isnt there a way to just sync what i need for tuna ? Am i supposed to tune the manifests to just sync what i need ?
- toolchain : i have seen while it synced several toolchains already. IIRC there were some problems with modern toolchains and gcc-4.7 should be used to avoid some problems with the buggy mmc. Is this still correct or can i just give gcc 5.x a go ? Im asking because thats the toolchain im using right now.
- kernel source : are there other more updated sources available apart from the ones in this tree ?
- build times : im used to long build times. Years ago when we built some huge c++ projects it took days to finish even with the huge buildfarm we had at our dispossal. What build times can i expect with a regular android build like this one ? I have a i7 with 8 cores at 3,5 MhZ and 16 GB Ram available and could even use another similar box with distcc if necessary.
Would really appreciate if someone could sched some light over this and let me have some tips / tricks to avoid further problems.
I have the feeling that some guides im reading are pointless because they are outdated.
Thanks !

Unlegacy Android follows and combines the OMAP4- and Grouper Android OpenSource Project which were created in late 2015 in order to maintain a clean, organized place for pure AOSP support for various OMAP4 and Grouper devices.
The goal is to provide stable and optimized releases of the recent Android versions for the supported devices.
This organization's goal is not to create feature packed ROMs, but to create a base ROM in such a way that custom ROM developers can easily adapt our changes.
The source is combined power from multiple devs, you won't find a newer kernel or device source for it.
Why there's no official thread yet? We are still preparing our source and some stuff around for best user experience. The source compiles as it is, no need to change anything for tuna.
You should be patient and wait until the stuff is "official official" available, our freetime is limited and we do our best to get things running.

Android-Andi said:
Unlegacy Android follows and combines the OMAP4- and Grouper Android OpenSource Project which were created in late 2015 in order to maintain a clean, organized place for pure AOSP support for various OMAP4 and Grouper devices.
The goal is to provide stable and optimized releases of the recent Android versions for the supported devices.
This organization's goal is not to create feature packed ROMs, but to create a base ROM in such a way that custom ROM developers can easily adapt our changes.
The source is combined power from multiple devs, you won't find a newer kernel or device source for it.
Why there's no official thread yet? We are still preparing our source and some stuff around for best user experience. The source compiles as it is, no need to change anything for tuna.
You should be patient and wait until the stuff is "official official" available, our freetime is limited and we do our best to get things running.
Click to expand...
Click to collapse
thanks, wasnt actually pushing to know how the current state of thing is, was more about knowing if im doing things correctly.
I have built succesfully a couple of N roms for my maguro and im learning how to cherrypick and reading more about the android frameworks.
thanks !

have just synced and got this when trying to build :
Code:
SYSMAP System.map
SYSMAP .tmp_System.map
OBJCOPY arch/arm/boot/Image
Kernel: arch/arm/boot/Image is ready
AS arch/arm/boot/compressed/head.o
GZIP arch/arm/boot/compressed/piggy.gzip
CC arch/arm/boot/compressed/misc.o
CC arch/arm/boot/compressed/decompress.o
SHIPPED arch/arm/boot/compressed/lib1funcs.S
AS arch/arm/boot/compressed/lib1funcs.o
AS arch/arm/boot/compressed/piggy.gzip.o
LD arch/arm/boot/compressed/vmlinux
OBJCOPY arch/arm/boot/zImage
Kernel: arch/arm/boot/zImage is ready
make: se sale del directorio '/usr/src/droid/kernel/samsung/tuna'
make: se entra en el directorio '/usr/src/droid/kernel/samsung/tuna'
make[1]: *** No hay ninguna regla para construir el objetivo 'dtbs'. Alto.
make: *** [Makefile:130: sub-make] Error 2
make: se sale del directorio '/usr/src/droid/kernel/samsung/tuna'
make: se entra en el directorio '/usr/src/droid/kernel/samsung/tuna'
The present kernel configuration has modules disabled.
Type 'make config' and enable loadable module support.
Then build a kernel with module support enabled.
make[1]: *** [/usr/src/droid/kernel/samsung/tuna/Makefile:1144: modules] Error 1
make: *** [Makefile:130: sub-make] Error 2
make: se sale del directorio '/usr/src/droid/kernel/samsung/tuna'
make: se entra en el directorio '/usr/src/droid/kernel/samsung/tuna'
The present kernel configuration has modules disabled.
Type 'make config' and enable loadable module support.
Then build a kernel with module support enabled.
make[1]: *** [/usr/src/droid/kernel/samsung/tuna/Makefile:1144: modules_install] Error 1
make: *** [Makefile:130: sub-make] Error 2
make: se sale del directorio '/usr/src/droid/kernel/samsung/tuna'
[ 33% 9805/29540] target thumb C++: libLLVMCore <= external/llvm/lib/IR/LLVMContext.cpp^Cmake: *** [build/core/ninja.mk:149: ninja_wrapper]
no idea why it complains about dtbs or module support being disabled.
where is the kernel .config file stored by the way ?
any ideas ?
thanks !

thagringo said:
- im syncing right now. So far it has downloaded 36 GB and repo says it is at 93 % ... is this normal ??? I know android projects are huge but this sounds to me like im doing sth. wrong. Isnt there a way to just sync what i need for tuna ? Am i supposed to tune the manifests to just sync what i need ?
Click to expand...
Click to collapse
When building cyanogenmod I can reduce it to about 5GB with this repo init:
Code:
repo init -u https://github.com/CyanogenMod/android.git -b cm-13.0 --depth=1 --groups=all,-notdefault,-device,-darwin,-x86,-mips,-exynos5,-intel,-eclipse,-device
b specifies the branch you want and means you don't get the whole tree.
The --groups excludes a bunch of stuff you don't want/need (mostly different platforms).
The depth command means that only the last version is checked out and not the whole history.
However, if you are creating a new ROM with this a base you might want the history.
Since this is a Developers forum, it would be nice if ROM posters actually put the build instructions in their posts and didn't just link to github and force you to search through 10s of different repos looking for info though.

opticyclic said:
When building cyanogenmod I can reduce it to about 5GB with this repo init:
b specifies the branch you want and means you don't get the whole tree.
The --groups excludes a bunch of stuff you don't want/need (mostly different platforms).
The depth command means that only the last version is checked out and not the whole history.
However, if you are creating a new ROM with this a base you might want the history.
Since this is a Developers forum, it would be nice if ROM posters actually put the build instructions in their posts and didn't just link to github and force you to search through 10s of different repos looking for info though.
Click to expand...
Click to collapse
Nice, thanks a lot !!
For now I have given up and I'm waiting for things to settle down.
Cheers mate !

I'm taking the same W&S Attitude about Building
thagringo said:
Nice, thanks a lot !!
For now I have given up and I'm waiting for things to settle down.
Cheers mate !
Click to expand...
Click to collapse
That is why I am taking the same wait and see attitude about building (though I AM actually running this on my toro-variant GNex on Tracfone; because it's unified, this same ROM will run on maguro).
Since then, I have grabbed AOSP 8.0 (latest branch) and I'm trying to compile (with new branch in place) and I'm running into a headache post-breakfast (breakfast is fine). Where things fall down is between brunch and lunch (in fact, it is during brunch where things fall down). I'm thinking that the falldown is because things are still fluid, so I'll keep the eyes peeled.

PGHammer said:
That is why I am taking the same wait and see attitude about building (though I AM actually running this on my toro-variant GNex on Tracfone; because it's unified, this same ROM will run on maguro).
Steps to take (from stock via Skipsoft Unified Toolkit):
1. Unlock and root (reboot following this step)
2. Flash TWRP 2.7.1.0 and reboot.
3. Upgrade TWRP to 2.8.7.0 and reboot.
4. Download both the firmware and GApps 7.1 pico (as is the case with GApps 6.0, nano is too large for any GNex) and push them to your phone, then force a reboot to recovery (which SHOULD be TWRP 2.8.7.0).
5. Install (in order) aosp_7.1_tuna2016-10-21 (latest as I type this) and open_gapps-arm-7.1-pico.zip. Wipe cache and reboot after the last install.
Click to expand...
Click to collapse
well, yes, i have been using 7.1 for a couple of months already but i was actually trying to build my own with the gcore stuff patches included.
cheers

Related

[REF] Source code: Unified git repo for GT-I9000 Gingerbread kernel source

Here we go
Common gingerbread-samsung git branch for all of us
This branch contains the fixed Gingerbread source (compiling and working) everyone of us may use as reference git repository.
Fixed in this source:
- all cleaned up gitignores
- missing FSR in Makefile
Take also a look at the updated README.txt that will explain you how to compile and get it working with modules
Also: makes sure you disable, in .config:
[*] Automatically append version information to the version string in menuconfig or CONFIG_LOCALVERSION_AUTO in .config
It will help each developer to exchange patches easily because of the common starting point.
bilboa1 said:
What supercurio means, is that he's offering to have a common GIT repository for the official Samsung kernel of the GT-I9000 (and similar phones).
The GIT tree would contain only Samsung drops and possible other upstream fixes/changes (the kernel being loosely based on the Nexus S kernel, there's at least Samsung and Google as different upstream), as well as bug fixes. No new features etc except maybe Voodoo.
The advantage of that is that the ones not using GIT yet could fork it and make their own kernel variation on a STABLE base. They could also issue pull requests for fixes they made, which would profit everyone. That's the open-source spirit and way of doing things efficiently by the way.
Note that the current GIT already contains fixes for compiling and using Samsung's GB sources with Samsung's firmwares (and binary modules).
I certainly support this idea.
Click to expand...
Click to collapse
How you can fork this repository:
- clone it via github directly
or, if you prefer keeping only this gingerbread branch directly, on your dev computer:
Code:
git clone git://github.com/project-voodoo/linux_gt-i9000.git -b gingerbread-samsung
cd linux_gt-i9000
git remote rm origin
git remote add origin git://your-new-remote-repository.git
git remote add common git://github.com/project-voodoo/linux_gt-i9000.git
This way, for people re-using Vodooo sound for example, it will be as easy as:
Code:
git fetch common
git merge gingerbread-voodoo-sound
If you have more idea of collaboration like that, express yourself
FAQ:
Q: Bleh! I hate this Kernel/ directory.
A: Yes, this was the case for the original commits but now it's a standard Linux repository with everything on its root.
But it didn't worked as expected, so I had to make the change, sorry for the inconvenience to the early adopters.
Q: What happens when Samsung update their source code tarballs
A: I'll update the common git repository accordingly (hopefully fast enough for you)
On your side, all you'll need to do will is.
Code:
git fetch common
− or git fetch git://github.com/project-voodoo/linux_gt-i9000.git
git merge gingerbread-samsung
Say good bye to messy tarballs!
PS: if you're looking to initramfs, take a shot at https://github.com/project-voodoo/samsung_initramfs − contribution welcome.
Good idea, I second that, it will be easier
wrong link
Github reads http://project-voodo.org/
What supercurio means, is that he's offering to have a common GIT repository for the official Samsung kernel of the GT-I9000 (and similar phones).
The GIT tree would contain only Samsung drops and possible other upstream fixes/changes (the kernel being loosely based on the Nexus S kernel, there's at least Samsung and Google as different upstream), as well as bug fixes. No new features etc except maybe Voodoo.
The advantage of that is that the ones not using GIT yet could fork it and make their own kernel variation on a STABLE base. They could also issue pull requests for fixes they made, which would profit everyone. That's the open-source spirit and way of doing things efficiently by the way.
Note that the current GIT already contains fixes for compiling and using Samsung's GB sources with Samsung's firmwares (and binary modules).
Forking in git hub is VERY VERY easy btw.
I certainly support this idea.
Awesome! - I also support this idea
United Galaxy S Developers
Nice idea! Perfect spirit of open source
I hope good things come out og this.
Great move Supercurio - once again !
Simply awesome men
Will the github include the multitouch fix(SGS only using two fingers rather than multiple fingers) that affects Google Maps rotation?
pikachu01 said:
Will the github include the multitouch fix(SGS only using two fingers rather than multiple fingers) that affects Google Maps rotation?
Click to expand...
Click to collapse
The gingerbread-samsung branch promoted here will only contain Samsung kernel sources and won't interfere with other developers modifications.
Only exception is if this source is broken and needs something to work, like nikademus's patch: https://github.com/project-voodoo/linux_gt-i9000/commit/6c8f989f58999770d23236bb172c3a4e1c80586b
It seems that JVK and JVB was pulled from Kies because of an update problem. Looks like we're going to have new ROMs to play with in a week or two (maybe less)
Edit: What about the SSL fix (http://forum.xda-developers.com/showthread.php?t=1040005)
Great, good idea. That's how community development should work!
zorxd said:
Great, good idea. That's how community development should work!
Click to expand...
Click to collapse
Agreed! Thanks for getting things started Supercurio! Now I have to start making a Vibrant branch.
Any chance this code will boot with preempt enabled? Does the MTD driver work with the OneNAND partitions like the NS code does? I'd kind of like to get away from FSR/RFS and such....
Still cloning...
ttabbal said:
Any chance this code will boot with preempt enabled? Does the MTD driver work with the OneNAND partitions like the NS code does? I'd kind of like to get away from FSR/RFS and such....
Still cloning...
Click to expand...
Click to collapse
The code has many similarities with Nexus S one (build from it IMO) and is preempt too
Just a note, I had to edit the Makefile to set the crosscompile variable to the right path
Question: is the generated zImage flashable through ODIN? Don't we need to add the initramfs?
supercurio said:
The code has many similarities with Nexus S one (build from it IMO) and is preempt too
Click to expand...
Click to collapse
Excellent! I just did a defconfig to check it out and saw the preempt in there.. Nice to see Samsung fixing things up a little. Now I need to get a GB ROM to install so I can try to boot.
Thanks again. I'll send a pull request when I have a Vibrant branch ready. Going for minimal modifications, fix touch button mapping and such. People can add whatever they want after that. Now I need to learn the new code tree... wheee! Hopefully the basics are the same, getting the changes into an i9k froyo kernel is pretty easy.
zorxd said:
Just a note, I had to edit the Makefile to set the crosscompile variable to the right path
Question: is the generated zImage flashable through ODIN? Don't we need to add the initramfs?
Click to expand...
Click to collapse
You will need an initramfs... anyone have a default one we can start with for 2.3?
zImage will have to be in a TAR file to flash with Odin. Heimdall can flash a bare zImage, as can the SGS Kernel Flasher tool for Android.
Oh... think I saw a setting in "make menuconfig" for the cross-compiler prefix. Might be able to avoid Makefile mods....
Sorry for the newb question, but how do we generate the initramfs? I guess we could take the one from stock JVB. But how do we extract it and how do we combine our compiled kernel with it?
On a side note, I noticed that CFQ is the default scheduler. Isn't it better to use No-op for flash memory?

[Reference] Building Android / Kernels for the LG E980 (ATT)

Howdy Everyone!
Here's my quick guide to compiling Android for the Optimus G Pro for ATT.
Basic Reference
For reference, this phone's codename is "geefhd" per the stock boot.img, however the kernel defconfig is "gkatt_bcm".
Simplicity sake dictates that I would like to use the kernel defconfig's name as the device codename.
From here on out, I'd like to refer to this phone in code as gkatt, yet we'll call the kernel source dir geefhd.​
Prerequisites
Building Android for this phone requires quite a bit of familiarity with the Android build system. If you are unfamiliar with things like makefiles and bash, I do not recommend trying this, as you'll pull out more of your hair than you can afford to lose.
That said, I'd recommend you have at least repo installed, or in your $PATH variable to make this guide a little easier to follow.
You also need to have the build utilities installed. See the CyanogenMod wiki for the build dependencies and how to install them.​
Getting your tree set up
Well, it ain't Christmas, but let's put up the tree anyway.
For this guide, I'm going to assume you're like me, and you put all your Android projects in ~/android/.
Let's begin.
Code:
mkdir -p ~/android/cm-10.1/
cd ~/android/cm-10.1/
repo init -u git://github.com/CyanogenMod/android.git -b cm-10.1
repo sync
Now after a few hours, you'll have a empty tree set up. Let's decorate!​
Getting the device repos set up
Once you have the basic CM skeleton in place, we need to add our device support files.
Code:
mkdir -p ~/android/cm-10.1/device/lge
cd ~/android/cm-10.1/device/lge
git clone -b cm-10.1 https://github.com/TeamLGOG/android_device_lge_gee-common.git gee-common
git clone https://github.com/thecubed/android_device_lge_gkatt.git gkatt
Congrats. Now you have the Android side of things ready, however you're not fully ready to start building-- you need a kernel!​
Getting the kernel repos ready
Next up: kernel.
Code:
mkdir -p ~/android/cm-10.1/kernel/lge
cd ~/android/cm-10.1/kernel/lge
git clone https://github.com/thecubed/android_kernel_lge_geefhd.git geefhd
You should now have a nice folder containing the kernel and everything you need to build it.​
Great! What do I do with this?
You now have two options -- do you want to build Android AND a kernel, or just a kernel?
Let's assume you want to build a kernel only first.
Code:
cd ~/android/cm-10.1/kernel/lge/geefhd
. envsetup.sh
Now you'll see some neat text from my setup script, it'll tell you what commands it just added to your shell and how to use them.
To build a kernel do this:
Code:
make mrproper
make gkatt_bcm-perf_defconfig
make zImage
Then you can look in arch/arm/boot for a file called zImage, which is the kernel itself, ready to be used and abused.
Once you're done and want to clean up, just run make clean or make mrproper to erase all tracks of ever building.
Keep in mind, "mrproper" erases your ".config" file, so before you can build again, you have to issue "make gkatt_bcm-perf_defconfig".
My envsetup script will warn you of that, just incase you forget
Now, let's assume you want to build an Android recovery image!
Code:
cd ~/android/cm-10.1/
. build/envsetup.sh
lunch cm_gkatt-userdebug
The environment is now ready for you to build...
Code:
mka recoveryimage
In about 10 mins you'll have a full recovery.img in $OUT.
The neat thing about this is it builds the kernel inline with your build -- so you build a recovery AND a kernel at the same time.
This will save you a LOT of time testing kernels, since you don't have to manually unpack and repack the boot image after modifying the kernel.
To see your shiny new recovery.img file:
Code:
cd $OUT
KEEP IN MIND you CANNOT flash these images! Flashing them will result in a security error!
You can only fastboot boot these images. I'll post fastboot instructions shortly.​
How do I get help??
Well, first things first, ask on IRC.
I'm nearly always around on Freenode. Join #lg-optimus-g and ask if I'm around.
I go by the name IOMonster on IRC. When I'm at work, I'm IOMonster_work.
Please don't just ask to ask a question, ask your full question.
Don't PM me unless you ask first, it's weird to get 20 PM windows open on my IRC client and not have any idea who is who or what they want... basic courtesy please
If by chance/miracle I'm not on IRC, post here. Again, I will not answer questions related to this via PM on XDA. I like answering things publicly so that others can read the answer. Google doesn't index PM's (yet, at least haha), so it doesn't do anyone any good to help you over PM unless it's something private.​
I <3 you so much, how do I show my love?
You are so kind
I most definitely do not expect donations of any kind, however they are appreciated a lot.
I purchased this phone off-contract just to get it unlocked, if you are a kind soul and would like to send me a token of your appreciation I would love you forever.
XDA has a neat "Donate to me" button that should be on the left side of this page under my name. Donations go to purchasing new hardware to work on and other neat stuff, so they're always appreciated.​
Let me know if I missed anything!
Awesome work! How can we get the vendor files to build cm-10.1? For now, could we use the same as the OG ?
apascual89 said:
Awesome work! How can we get the vendor files to build cm-10.1? For now, could we use the same as the OG ?
Click to expand...
Click to collapse
Check http://github.com/TeamLGOG
The vendor files there should work fine for this device, minus the wlan props and any modem/DSP related firmware.
This phone is *very* similar to the OG/N4, it's just got a larger screen and different wlan chip (Broadcom instead of Qualcomm)
However, all that said, I've yet to build it for the phone-- I'm focused on getting it more unlocked right now.
thecubed said:
Check http://github.com/TeamLGOG
The vendor files there should work fine for this device, minus the wlan props and any modem/DSP related firmware.
This phone is *very* similar to the OG/N4, it's just got a larger screen and different wlan chip (Broadcom instead of Qualcomm)
However, all that said, I've yet to build it for the phone-- I'm focused on getting it more unlocked right now.
Click to expand...
Click to collapse
Hi there
I am interest in building E988 kernel which is international version of Optimus G Pro
would you mind tell me how to tweak the E988 source on this development ?
E988 is using gku-perf_defconfig
E988 is using different wlan chip vs ATT
hkfriends said:
Hi there
I am interest in building E988 kernel which is international version of Optimus G Pro
would you mind tell me how to tweak the E988 source on this development ?
E988 is using gku-perf_defconfig
E988 is using different wlan chip vs ATT
Click to expand...
Click to collapse
Have you tried gku_bcm-perf_defconfig ?
I have a feeling that might do the trick
thecubed said:
Have you tried gku_bcm-perf_defconfig ?
I have a feeling that might do the trick
Click to expand...
Click to collapse
yes, i tested in E988 source.. and it will hanged and stuck in fastboot screen (as last time, I try to compile BCM config (want a trick for a wrong driver)
anyway.. i will clone your kernel source first to see and will try using your source to compile with "gku-perf_defconfig"
I believe the E980 and E988 is the same kernel source, only config is different (i hope)
Edit: (Testing Case)
1) Using your source code and with gku-perf_defconfig =>
Fastboot boot <myboot.img> => reboot => then back to Fastboot mode
It seems wcnss_wlan (Qualcomm) has issue again
https://mega.co.nz/#!VI4S3RgK!SpgWgX5mUXrQFpYeE9oZlXbyVkImsIYz6J_CWWe9X5M
[ 5.528704 / 01-18 07:39:57.262] wcnss_wlan wcnss_wlan.0: WCNSS Power-up failed.
[ 5.535174 / 01-18 07:39:57.272] init: cannot find '/system/etc/install-recovery.sh', disabling 'flash_recovery'
[ 5.535449 / 01-18 07:39:57.272] init: cannot find '/system/bin/libbroadcast_server', disabling 'broadcast'
[ 5.536303 / 01-18 07:39:57.272] init: cannot find '/system/xbin/spritebud', disabling 'spritebud'
[ 5.536365 / 01-18 07:39:57.272] init: cannot find '/system/bin/rf4ce', disabling 'rf4ce'
[ 5.547504 / 01-18 07:39:57.282] wcnss_wlan triggered by userspace
2) Using your source code and with gku_bcm-perf_defconfig =>
Fastboot boot <myboot.img> => hanged => need press power button for 3sec and re-start in fastboot mode
then I fash back the stock image and then try to get last_kmsg...
but I get nothing due to hanged (i think)
[email protected]:/ # cat /proc/last_kmsg > /sdcard/last_kmsg.txt
cat /proc/last_kmsg > /sdcard/last_kmsg.txt
/proc/last_kmsg: No such file or directory
thanks for all your work only one question how to get into fast boot
Got a small error but duno how to fix it here a build log\
build/core/Makefile:419: *** BOARD_FORCE_RAMDISK_ADDRESS has been deprecated. Use BOARD_MKBOOTIMG_ARGS.. Stop.
[email protected]:~/android/cm-10.1#
that's when tring to build recovery
This is when tring to build kernel
MK_FW firmware/audience-es325-fw.bin.gen.S
make[1]: *** No rule to make target `firmware/audience-es325-fw.bin', needed by `firmware/audience-es325-fw.bin.gen.o'. Stop.
make: *** [firmware] Error 2
Gotroot said:
Got a small error but duno how to fix it here a build log\
build/core/Makefile:419: *** BOARD_FORCE_RAMDISK_ADDRESS has been deprecated. Use BOARD_MKBOOTIMG_ARGS.. Stop.
[email protected]:~/android/cm-10.1#
that's when tring to build recovery
This is when tring to build kernel
MK_FW firmware/audience-es325-fw.bin.gen.S
make[1]: *** No rule to make target `firmware/audience-es325-fw.bin', needed by `firmware/audience-es325-fw.bin.gen.o'. Stop.
make: *** [firmware] Error 2
Click to expand...
Click to collapse
I got that same error this morning. Had to leave for work so couldn't really look into it.
Sent from my GT-I9505G using Tapatalk 4 Beta
apascual89 said:
I got that same error this morning. Had to leave for work so couldn't really look into it.
Sent from my GT-I9505G using Tapatalk 4 Beta
Click to expand...
Click to collapse
So, all that is because I just realized I didn't sync CM10.1, but just CM10 to my buildbox...
I'll update it all today, I just realized that when I set up my build dir I just did repo init -u .. -b jellybean instead of cm-10.1
oops!
Anyway, easy fix, and I'll have it out soon-ish today.
thecubed said:
So, all that is because I just realized I didn't sync CM10.1, but just CM10 to my buildbox...
I'll update it all today, I just realized that when I set up my build dir I just did repo init -u .. -b jellybean instead of cm-10.1
oops!
Anyway, easy fix, and I'll have it out soon-ish today.
Click to expand...
Click to collapse
No rush man, I don't want to take time away from you unlocking this beast!
Lmfao awesome!!!!!!
DUDE LOL still throwing back error after redoing my folers heres the error
When making recovery
build/core/base_rules.mk:130: *** gee-common/recovery: MODULE.TARGET.STATIC_LIBRARIES.librecovery_ui_geehrc already defined by device/lge/gee-common/recovery. Stop.
When making kernel
MK_FW firmware/audience-es325-fw.bin.gen.S
make[1]: *** No rule to make target `firmware/audience-es325-fw.bin', needed by `firmware/audience-es325-fw.bin.gen.o'. Stop.
make: *** [firmware] Error 2
I just pushed my (very minor) only correction needed to make this build with cm-10.1 sources.
Provided you have your build environment set up correctly, everything should build now (for recovery at least)
thecubed said:
I just pushed my (very minor) only correction needed to make this build with cm-10.1 sources.
Provided you have your build environment set up correctly, everything should build now (for recovery at least)
Click to expand...
Click to collapse
I tried the mka bootimage option and it gives me the following error:
LD drivers/usb/storage/ums-alauda.o
LD drivers/usb/storage/ums-cypress.o
LD drivers/usb/storage/ums-datafab.o
LD drivers/usb/storage/ums-freecom.o
LD drivers/usb/storage/ums-isd200.o
LD drivers/usb/storage/ums-jumpshot.o
LD drivers/usb/storage/ums-karma.o
LD drivers/usb/storage/ums-onetouch.o
LD drivers/usb/storage/ums-realtek.o
LD drivers/usb/storage/ums-sddr09.o
LD drivers/usb/storage/ums-sddr55.o
LD drivers/usb/storage/ums-usbat.o
LD drivers/usb/storage/built-in.o
LD drivers/usb/built-in.o
LD drivers/built-in.o
make[1]: *** [sub-make] Error 2
make[1]: Leaving directory `/home/apascual89/android/cm-10.1/kernel/lge/geefhd'
make: *** [TARGET_KERNEL_BINARIES] Error 2
make: *** Waiting for unfinished jobs....
[email protected]:~/android/cm-10.1$
In the past I remember seeing that if I was trying to build with an unsupported toolchain.
I'm having a small issue as well so I killed ny whole env... and started from scratch
Sent from my LG-E980 using xda premium
I tried now to build the zImage and got the following error:
MK_FW firmware/audience-es325-fw.bin.gen.S
make[1]: *** No rule to make target `firmware/audience-es325-fw.bin', needed by `firmware/audience-es325-fw.bin.gen.o'. Stop.
make: *** [firmware] Error 2
[email protected]:~/android/cm-10.1/kernel/lge/geefhd$
Just reporting to let you know.
Ok even after thrown my env. away and starting from scratch im still getting the same error
make[1]: *** No rule to make target `firmware/audience-es325-fw.bin', needed by `firmware/audience-es325-fw.bin.gen.o'. Stop.
make: *** [firmware] Error 2
I'm not sure why you guys are getting those errors. I'm able to build the kernel just fine...
Maybe my repo is missing something that I have locally? I'll try re-syncing everything to a new dir and testing again later.
Awesome you got my error log just let me know I will keep hitting it I have nun but time....
Thanks fir the work
Sent from my LG-E980 using xda premium

CM12.1 building thread for Moto X Pure devs

Let's get a ROM building thread working for the devs working on the project.
Using my source, you can compile a booting CM12.1 ROM
Working so far:
Boots
Audio
Camera/Camcorder
Video playback
Phone
4G LTE
Sensors
Not working:
Everything else (probably)
Device: https://github.com/JackpotClavin/android_device_moto_clark
Vendor: https://github.com/JackpotClavin/android_vendor_motorola_clark
Kernel: https://github.com/MotorolaMobilityLLC/kernel-msm, branch lollipop-5.1.1-release-clark
Things that I know are missing/broken,
1. I'm missing a bunch of /etc/firmware files relating to audio. As far as I know it has no effect on in call audio as it doesn't work if they are all pushed there or not.
2. Bluetooth will continuously force close, so when you extract the zip you build in recovery, you will have to rename /system/app/Bluetooth/Bluetooth.apk to Bluetooth.bak
3. You will have to set your preferred network type to LTE to get a radio signal
Finally something dropping for the PURE. Thank you
Slim running also. In call audio is working here as well
Sent from my XT1575 using Tapatalk
They're beautiful, keep up the good work, gents!
I can't wait!!
Sent from my XT1575 using Tapatalk
Absolutely amazing, I've been waiting for something to come out. Hopefully a kernel is soon to follow!
Mind pm'ing me on hangouts?
Sent from my XT1575 using Tapatalk
JackpotClavin said:
Let's get a ROM building thread working for the devs working on the project.
Using my source, you can compile a booting CM12.1 ROM
Click to expand...
Click to collapse
JackpotClavin,
Really excited to see that you're developing for the Moto X! I ran your roms on my vs980 for a long time and it was fantastic.
Great work!
Sent from my XT1575 using Tapatalk
After being on a locked down phone for the last four months, I am so looking forward to flashing ROMs again. You guys can't get these out fast enough.
I spent tonight setting up a build environment, I want to at least get CM12.1 booting on my device so I can judge it's performance vs stock Android, bugs or not.
Haven't built a ROM in years, so i'm a bit rusty, right now the build is breaking on:
Code:
/android/clark/roms/cm/kernel/moto/clark/scripts/kconfig/Makefile:108: recipe for target 'msm8994-perf_defconfig' failed
make[3]: *** [msm8994-perf_defconfig] Error 1
/android/clark/roms/cm/kernel/moto/clark/Makefile:512: recipe for target 'msm8994-perf_defconfig' failed
make[2]: *** [msm8994-perf_defconfig] Error 2
Makefile:135: recipe for target 'sub-make' failed
make[1]: *** [sub-make] Error 2
I'll tinker with it tomorrow, probably missed a step while tweaking the kernel source to match the device.
breakingspell said:
I spent tonight setting up a build environment, I want to at least get CM12.1 booting on my device so I can judge it's performance vs stock Android, bugs or not.
Haven't built a ROM in years, so i'm a bit rusty, right now the build is breaking on:
Code:
/android/clark/roms/cm/kernel/moto/clark/scripts/kconfig/Makefile:108: recipe for target 'msm8994-perf_defconfig' failed
make[3]: *** [msm8994-perf_defconfig] Error 1
/android/clark/roms/cm/kernel/moto/clark/Makefile:512: recipe for target 'msm8994-perf_defconfig' failed
make[2]: *** [msm8994-perf_defconfig] Error 2
Makefile:135: recipe for target 'sub-make' failed
make[1]: *** [sub-make] Error 2
I'll tinker with it tomorrow, probably missed a step while tweaking the kernel source to match the device.
Click to expand...
Click to collapse
Well the kernel source @JackpotClavin linked is not really cm/custom rom friendly.
Use this kernel source https://github.com/Thecrazyskull/kernel-msm (branch cm-12.1) and change msm8994-perf_defconfig in BoardConfig.mk (in your device tree) to clark_defconfig and build again
Thecrazyskull said:
Well the kernel source @JackpotClavin linked is not really cm/custom rom friendly.
Use this kernel source https://github.com/Thecrazyskull/kernel-msm (branch cm-12.1) and change msm8994-perf_defconfig in BoardConfig.mk (in your device tree) to clark_defconfig and build again
Click to expand...
Click to collapse
Thanks much! It's been building for about 45 minutes now without any issues, probably won't have much longer to go.
Edit: Build broke again after an hour and a half, but looks like it was a Java library i'd missed during the initial environment setup. Got a 50GB cache ready too, hopefully it'll speed up each build attempt. This is a learning experience, hopefully i'll be able to cook up my own nightlies once the official branch goes live Infinite kudos to everyone that's put in this work so far!
Beautiful. I can't wait to see a somewhat stable build. Very exciting ?
Sent from my XT1575 using XDA Free mobile app
now I can't wait even more! omg thank you devs
this excites me already! overlay Enable VoLTE in config. 4 days ago
I gave up on building the ROM from source, a bit daunting for my skill level. Something kept making it hang near the end of the build process (2 hours or so each try), and I've got no problem waiting a while longer for a more stable build rather than trying to find out what's broken on my own. Doesn't keep me from checking back in 3 or 4 times a day though, hah.
breakingspell said:
I gave up on building the ROM from source, a bit daunting for my skill level. Something kept making it hang near the end of the build process (2 hours or so each try), and I've got no problem waiting a while longer for a more stable build rather than trying to find out what's broken on my own. Doesn't keep me from checking back in 3 or 4 times a day though, hah.
Click to expand...
Click to collapse
Mind posting the actual error?
Thecrazyskull said:
Mind posting the actual error?
Click to expand...
Click to collapse
The process would hang up on
Code:
make: *** Waiting for unfinished jobs....
I'm building it on my Debian server, i'm certain I have all of the dependencies and repos set right, it'll compile for roughly 2 hours and then hang on the make command for 2+ hours. Went ahead and made a new project folder so I can re-sync everything, I'll give it a try again tomorrow.
breakingspell said:
The process would hang up on
Code:
make: *** Waiting for unfinished jobs....
I'm building it on my Debian server, i'm certain I have all of the dependencies and repos set right, it'll compile for roughly 2 hours and then hang on the make command for 2+ hours. Went ahead and made a new project folder so I can re-sync everything, I'll give it a try again tomorrow.
Click to expand...
Click to collapse
You didnt post the actual error
Thecrazyskull said:
You didnt post the actual error
Click to expand...
Click to collapse
I'll keep an eye out next time I try and build it, hadn't caught any errors in the actions leading up to that line, it might have been much earlier in the process
Hi,
A quick post to let you know guys I successfully made a "blind" PAC build for clark with device tree & kernel provided here. I don't have the device for now (maybe later), so can't test it. Dunno if it's working or not.

[WIP] [ROM] [8.1.x] LineageOS 15.1 [Sumire]

I'm posting this now and hope in doing so some new input can be reached. Due to recent new and old exploits we need this, I have hardened the kernel some, from CopperheadOS, and put in place full "Harden usercopy", updated it to 3.10.108, and before I go any further in breaking the kernel i release this WIP. I refer to this post ( https://forum.xda-developers.com/showpost.php?p=80265757&postcount=50 ) for the current state of mobile calls etc.
Fastboot images:
190919: https://drive.google.com/open?id=1OAzYc_D_FHbbmIyFiSVtGLolB2EfiE40
290819: https://drive.google.com/open?id=1d8FNiFlMN6Bey6xD606pBomqBgSiZ-MO
Features:
OS Version: 8.1.0 Oreo
Kernel: Linux 3.10.108
Important informations:
You should be familiar with general installation of custom roms.
Required for installation: fastboot
This ROM needs a clean install, old /data may cause problems!
Working:
WIFI
Bluetooth
OTG-USB
NFC
These things are NOT working.
Camera; is not included due to inconsistency in the build currently. But failed to connect to the camera last time it did.
GSM; this will require reworking some android code, making some progress i think.
Code:
Abort message: 'CANNOT LINK EXECUTABLE "/system/bin/netmgrd": cannot locate symbol "_ZN6google8protobuf8internal20RepeatedPtrFieldBase4SwapEPS2_" referenced by "/system/vendor/lib64/libcneapiclient.so"...'
FM-Radio (not included)
GPS
Bugs:
Installing apps freeze the phone for a while.
Basically, this release needs help.
Source:
https://github.com/threader/local_manifests
https://github.com/threader/kernel
https://github.com/threader/android_device_sony_sumire
https://github.com/threader/android_device_sony_kitakami-common
Patch for external/protobuf attached to this thread.
Modified libcneapiclient.so attached.
Credits:
Everyone involved with the Sony-msm8994 project ( https://github.com/sony-msm8994/android_device_sony_kitakami-common/commits/lineage-15.1 )
Mr. Open devices "jerpelea", for actually answering some of my stupid questions I should have realized myself.
Berni-0815 for trying to do this for the z5c and leaving useful resources.
And everyone posting and following the Guide to port to Lineage-16.0 thread by algui91 (https://forum.xda-developers.com/xperia-z5/general/guide-to-port-to-lineage-16-0-t3931428) and willing to participate, this is a community effort after all.
Please don't quote this thread, I will edit it as I release new builds and make progress.
I was unsuccessful in building a flashable zip image first time I tried some moons ago, I don't know if this was due to the need of a TWRP update or just my half arsed attempt, I would appreciate if someone could direct me to correctly doing so.
Cheers
How can i help including the fact that i am nearly noob in Linux / Unix and havent built any custom ROM at the moment?
DP
threader said:
BuzzerHead.
Click to expand...
Click to collapse
let me think on that, but there are two things that's needed, a libcneapiclient.so that is msm8996 perhaps and for Android 8.x, maybe we can decompile and figure out the differences. And a Qualcomm trust zone from from maybe 8996 to hack and plug the holes. I'm still reading up.on this though but if you Google "chipsec Qualcomm trust zone" or indeed just the first results for " Qualcomm trust zone" you certainly see the problem ( https://blog.quarkslab.com/introduction-to-trusted-execution-environment-arms-trustzone.html , https://www.blackhat.com/docs/us-14/materials/us-14-Rosenberg-Reflections-on-Trusting-TrustZone.pdf )
I'm re-working the external/protobuf modifications just now as I think that is why the bug i listes occurred.
Edit:
Right, great, after unhacking the hacks and returning the protobuf API to its original state I'm stuck an error before the quite impossible error i had earlier, so this is not going as quickly as i thought, either.
Code:
Abort message: 'CANNOT LINK EXECUTABLE "/system/bin/netmgrd": cannot locate symbol "_ZN6google8protobuf2io17CodedOutputStream13WriteVarint32Ej" referenced by "/system/vendor/lib64/libcneapiclient.so"..
This is a clearly defined symbol already but perhaps not behaving as intended and an error my previous attempt somehow worked around.
The following might be the reason it hangs during package install though;
Code:
09-16 18:46:55.875 865 956 W SchedPolicy: add_tid_to_cgroup failed to write '1947' (Permission denied); fd=3
09-16 18:46:38.393 865 1126 W NativeCrashListener: Couldn't find ProcessRecord for pid 2958
Any news?
Is this project dead? Seeing a newer version of LOS on this device would be nice.
Sent from my SM-T580 using XDA Labs
TALUAtXDA said:
Is this project dead? Seeing a newer version of LOS on this device would be nice.
Sent from my SM-T580 using XDA Labs
Click to expand...
Click to collapse
It's resting... My life up ended and screwed my peace and tranquility, I simply have not had the time to look at it, I'm having a look now as long as the peace lasts.
I see there is a 10.0 now, with some collaboration maybe we can get this all working, I argued a lot with the vendor libs, i just need to get a grip on what's going on there with the other project. As far as i can tell quickly looking at it I can merge some of those changes to the unified kernel 3.10.108 I'm using and see how things go, It will take a some time to get going again. As far as the kernel goes I ought get it up to 3.12, there are some pagetable ioslation patches that are required for safe operation etc, but I paused kernel work until i could get Android in shape, then life happened....

Unofficial build help?

I'm trying to build for a device that has no known Android 10 device trees that I can find. I think I fleshed out the trees pretty well by following some sister/cousin devices and extracting a lot of stuff from the rooted phone itself, but my build fails at 2% due to a missing output file. The missing libdss.so file should be built as part of the kernel (whose source I have), but the build clearly isn't happening (or isn't happening in time to be recognized by the build system.)
I tried to build the kernel as a standalone module to see what might be wrong, and in trying to do that I can't seem to resolve all the issues with dependencies for cross-compilation to arm64. I've built for devices with existing trees by cherry-picking what I needed, but I've never built for something from the ground-up like this. I don't want to make the ROM with a pre-built kernel as the end-goal would be to become official. The attached image is the exact error I'm receiving, and the following links are to all of my source repositories that I'm using in addition to the Lineage17.1 base. Any help would be appreciated. I work as a full-time dev by day, I don't mind slogging around in some code if that's what I takes, I've just reached the end of my troubleshooting knowledge here and am not sure what the next step might be.
https://github.com/polaarbear/android_device_motorola_troika_sprout
https://github.com/polaarbear/android_device_motorola_universal9610-common
https://github.com/polaarbear/android_vendor_motorola_universal9610-common
https://github.com/polaarbear/android_kernel_motorola_universal9610

Categories

Resources