yashsingh1/xdaforums huggingface dataset:
[Android] MZO:
What does lineage.mk have to do in AOSP? Change it to aosp_<device.mk> and also the entry inside the AndroidProducts.mk, edit the newly renamed file and remove Lineage vendor call and change product name from lineage_alice to aosp_alice.
[Android] XTutorials:
Now I get this:

Which would you like? [aosp_arm-eng] 13

build/core/product_config.mk:227: *** _nic.PRODUCTS.[[device/huawei/alice/lineage_alice.mk]]: "vendor/cm/config/common_full_phone.mk" does not exist. Stop.

** Don't have a product spec for: 'lineage_alice'

** Do you have the right repo manifest?

andrei@Andrei-HP-EliteBook:~/android$
[Android] spookcity138:
Yes, what MZO said. You need to change things to aosp instead of lineage

Edit:

One example is vendor/cm/config/full_phone. It needs to be calling the proper aosp phone
[Android] MZO:
AOSP doesn't have a vendor/aosp and of course doesn't call it

https://android.googlesource.com/device/huawei/angler/+/android-7.1.2_r11/aosp_angler.mk

vendor/* is not necessary
[Android] Markinb66:
Hi. I am compiling Bliss and got this error https://hastebin.com/yaxakeguzu.js
[Android] qiurigao:
target Prebuilt: telecom (/opt/sm/out/target/product/PD1613/obj/EXECUTABLES/telecom_intermediates/telecom)
external/iproute2/tc/q_prio.c: In function 'prio_parse_opt':
external/iproute2/tc/q_prio.c:35:9: error: excess elements in struct initializer [-Werror]
struct tc_prio_qopt opt={3,{ 1, 2, 2, 2, 1, 2, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1 },1};
^
external/iproute2/tc/q_prio.c:35:9: error: (near initialization for 'opt') [-Werror]
external/iproute2/tc/q_prio.c:60:8: error: 'struct tc_prio_qopt' has no member named 'enable_flow'
opt.enable_flow = 1;
^
external/iproute2/tc/q_prio.c:64:8: error: 'struct tc_prio_qopt' has no member named 'enable_flow'
opt.enable_flow = 0;
^
external/iproute2/tc/q_prio.c: In function 'prio_print_opt':
external/iproute2/tc/q_prio.c:133:30: error: 'struct tc_prio_qopt' has no member named 'enable_flow'
fprintf(f, " flow %s", qopt->enable_flow ? "enabled" : "disabled");
^
cc1: all warnings being treated as errors
make: *** [/opt/sm/out/target/product/PD1613/obj/EXECUTABLES/tc_intermediates/q_prio.o] 错误 1
make: *** 正在等待未完成的任务....

#### make failed to build some targets (40:42 (mm:ss)) ####
[Android] aoleary:
No SIM detected on startup

Hi.

Im trying to build Dirty Unicorns 11 for the LG G3 D855, however I keep getting an issue where the SIM is not detected.

Even on first boot, there is no SIM detected. I have synced the following LOS repos directly, with zero modifications done on my end.

<manifest>
<project name="LineageOS/android_device_lge_d855" path="device/lge/d855" remote="github" revision="cm-14.1" />
<project name="LineageOS/android_device_lge_g3-common" path="device/lge/g3-common" remote="github" revision="n7x-caf" />
<project name="LineageOS/android_kernel_lge_g3" path="kernel/lge/g3" remote="github" revision="n7x-caf" />
<project name="TheMuppets/proprietary_vendor_lge" path="vendor/lge" remote="github" revision="cm-14.1" />
</manifest>

I have also taken a

logcat

of the startup process. Can anyone give me an idea what the issue might be?

I am syncing TheMuppets/proprietary_vendor_lge repo, so I dont think vendor blobs is an issue..

Everything else works perfectly fine though..

Any help would be much appreciated as Im hitting my head off a brick wall at the moment..
[Android] mihran_thalhath:
Clone the los ril repos and try building again
[Android] aoleary:
[MENTION=6422464]mihran_thalhath[/MENTION] Thanks for the tip. Which repo do I clone, cm-14.1 or cm-14.1-caf ?
[Android] mihran_thalhath:
14.1 to hardware/ril and 14.1-caf to hardware/ril-caf
[Android] MZO:
You have to clone non caf and caf ones both, look at lineageos snippets to see where each of them go. And oh, your SoC specific audio, media, and display HALs too
[Android] aoleary:
Hi [MENTION=6304619]MZO[/MENTION]

What do you mean by "look at lineagos snippets to see where each of them go"?

Do I not just clone like this ?

Where do I find the repos for the "SoC specific audio, media, and display HALs" ?

Is the last bit important since everything seems to work OK other than the SIM not being detected..
[Android] MZO:
I'd recommend you take a look at https://github.com/LineageOS/android (into snippets dir and into that file), you see lots of HALs (hardware/*) including, rils, caf rils, audio, display, media, caf versions of them and

It has a target path in each line like

path="hardware/qcom/media-caf/msm8994" it shows that the specific HAL goes in hardware/qcom/media-caf/msm8994
[Android] ABSathe:
Recovery building issue on AOSP-CAF ROM

Hello

I'm facing following errors in building AOSP CAF and have no idea what can I do

https://hastebin.com/obitaguqin.sql

In case the link of log goes dead

Target build info: /home/ashutosh/aosp/out/target/product/condor/system/build.prop
cat: /home/ashutosh/aosp/out/target/product/condor/recovery.id: No such file or directory
Construct recovery from boot
mkdir -p /home/ashutosh/aosp/out/target/product/condor/obj/PACKAGING/recovery_patch_intermediates/
PATH=/home/ashutosh/aosp/out/host/linux-x86/bin:$PATH /home/ashutosh/aosp/out/host/linux-x86/bin/imgdiff /home/ashutosh/aosp/out/target/product/condor/boot.img /home/ashutosh/aosp/out/target/product/condor/recovery.img /home/ashutosh/aosp/out/target/product/condor/obj/PACKAGING/recovery_patch_intermediates/recovery_from_boot.p
source and target don't have same number of chunks!
source chunks:
chunk 0: type 0 start 0 len 5406730
chunk 1: type 2 start 5406730 len 2886912
chunk 2: type 0 start 6823980 len 419796
target chunks:
chunk 0: type 0 start 0 len 8007680
make: *** [/home/ashutosh/aosp/out/target/product/condor/obj/PACKAGING/recovery_patch_intermediates/recovery_from_boot.p] Error 1
make: *** Waiting for unfinished jobs....

.

Anyways, the recovery built in this way will replace my twrp after flashing the build ?? If yes, I don't want that !!

Suggest me something to solve this

I've tried building multiple times and it fails at same stage.

Any idea ?

I'm using method suggested by [MENTION=7065337]spookcity138[/MENTION] to build on low spec PC
[Android] DiamondJohn:
I am building a LineageOS ROM. Although it builds a CM recovery, it does not automatically include it in the flashable zip. When you do get it to build a zip, simply look inside the flashable zip and you should not see the recovery image included. It needs to be explicitly flashed separately. That's LineageOS, so check you own output zip to confirm, but I would guess it would be the same.
[Android] Yanun:
Can someone help? :confused:

I'm getting error with FMRadio.apk when building XOSP for Xperia z2

Error:

Building with Jack: /home/yanun/XOSP/out/target/common/obj/APPS/FMRadio_intermediates/with-local/classes.dex

Copying: /home/yanun/XOSP/out/target/common/obj/APPS/FMRadio_intermediates/classes.dex

target Package: FMRadio (/home/yanun/XOSP/out/target/product/sirius/obj/APPS/FMRadio_intermediates/package.apk)

Warning: AndroidManifest.xml already defines versionCode schemas.android.com/apk/res/android); using existing value in manifest.

Warning: AndroidManifest.xml already defines versionName schemas.android.com/apk/res/android);using existing value in manifest.

Warning: AndroidManifest.xml already defines minSdkVersion /schemas.android.com/apk/res/android); using existing value in manifest.

Warning: AndroidManifest.xml already defines targetSdkVersion schemas.android.com/apk/res/android) using existing value in manifest.

make: *** No rule to make target '/home/yanun/XOSP/out/target/product/sirius/system/lib/libfmjni.so', needed by '/home/yanun/XOSP/out/target/product/sirius/system/priv-app/FMRadio/FMRadio.apk'. Stop.

#### make failed to build some targets (03:02:46 (hh:mm:ss)) ####
[Android] Indigoeyes:
I think I almost managed to compile a full rom (OwnROM) for p2a42 but got the following error; https://hastebin.com/iwiloqaqaj.pas anyone has an idea how to solve this type of issue? :)
[Android] spookcity138:
https://xdaforums.com/showthread.php?p=70106713

Its an out of memory error. I have posted the steps I use to fix this.
[Android] Indigoeyes:
I'll try this and report back to you :) Thanks :o
[Android] Indigoeyes:
Succesfully compiled the ROM =) but when I'm booting it up it's stuck at "android is starting" any ideas what could cause this issue? :)

I just noticed there wasn't any pre-installed launcher bypassed it by going into settings -> apps -> google play store and downloading launcher
[Android] qiurigao:
Copying: /opt/sm/out/target/common/obj/APPS/messaging_intermediates/classes-jarjar.jar

Copying: /opt/sm/out/target/common/obj/APPS/messaging_intermediates/emma_out/lib/classes-jarjar.jar

Copying: /opt/sm/out/target/common/obj/APPS/messaging_intermediates/classes.jar

ProGuard, version 5.1

Reading program jar [/opt/sm/out/target/common/obj/APPS/messaging_intermediates/classes.jar]

Reading library jar [/opt/sm/out/target/common/obj/JAVA_LIBRARIES/core-junit_intermediates/classes.jar]

Reading library jar [/opt/sm/out/target/common/obj/JAVA_LIBRARIES/core-libart_intermediates/classes.jar]

Reading library jar [/opt/sm/out/target/common/obj/JAVA_LIBRARIES/ext_intermediates/classes.jar]

Reading library jar [/opt/sm/out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/classes.jar]

Reading library jar [/opt/sm/out/target/common/obj/JAVA_LIBRARIES/ims-common_intermediates/classes.jar]

Reading library jar [/opt/sm/out/target/common/obj/JAVA_LIBRARIES/telephony-common_intermediates/classes.jar]

Preparing output jar [/opt/sm/out/target/common/obj/APPS/messaging_intermediates/proguard.classes.jar]

Copying resources from program jar [/opt/sm/out/target/common/obj/APPS/messaging_intermediates/classes.jar]

target Dex: messaging

Copying: /opt/sm/out/target/common/obj/APPS/messaging_intermediates/classes.dex

target Package: messaging (/opt/sm/out/target/product/PD1613/obj/APPS/messaging_intermediates/package.apk)

W/asset (29529): Asset path /opt/sm/out/target/common/obj/APPS/framework-res_intermediates/package-export.apk is neither a directory nor file (type=1).

ERROR: Asset package include '/opt/sm/out/target/common/obj/APPS/framework-res_intermediates/package-export.apk' not found.

make: *** [/opt/sm/out/target/product/PD1613/obj/APPS/messaging_intermediates/package.apk] 错误 1

make: *** 正在删除文件“/opt/sm/out/target/product/PD1613/obj/APPS/messaging_intermediates/package.apk”

make: *** 正在等待未完成的任务....

#### make failed to build some targets (21:04 (mm:ss)) ####
[Android] neonkat:
can you link your device trees?
[Android] kaibsora:
Build error

So i am building aosp(caf) for moto x pure(clark) and all of my repos are located at xPureAosp on github

when i try to build i get this error

ninja: error: '/home/kai/android/nougat/out/target/product/clark/obj_arm/SHARED_LIBRARIES/libtime_genoff_intermediates/export_includes', needed by '/home/kai/android/nougat/out/target/product/clark/obj_arm/SHARED_LIBRARIES/libandroid_servers_intermediates/import_includes', missing and no known rule to make it
build/core/ninja.mk:151: recipe for target 'ninja_wrapper' failed
make: *** [ninja_wrapper] Error 1

#### make failed to build some targets (23 seconds) ####

kai@kai-Precision-M6800:~/android/nougat$

any help?

Thank You!!!
[Android] nathsagar96:
How to solve this problem

target SharedLib: libLLVM (/home/sagar/aosip/out/target/product/bacon/obj/SHARED_LIBRARIES/libLLVM_intermediates/LINKED/libLLVM.so)

java.lang.AssertionError

at com.android.sched.scheduler.MultiWorkersScheduleInstance.process(MultiWorkersScheduleInstance.java:523)

at com.android.jack.Jack.run(Jack.java:738)

at com.android.jack.Jack.checkAndRun(Jack.java:412)

at com.android.jack.CommandLine.runJack(CommandLine.java:79)

at com.android.jack.api.v01.impl.Cli01CompilationTaskImpl.run(Cli01CompilationTaskImpl.java:85)

at com.android.jack.server.tasks.JackTask.handle(JackTask.java:168)

at com.android.jack.server.tasks.SynchronousServiceTask.handle(SynchronousServiceTask.java:49)

at com.android.jack.server.tasks.JackTask.handle(JackTask.java:55)

at com.android.jack.server.router.PathRouter.handle(PathRouter.java:65)

at com.android.jack.server.router.ContentTypeParameterRouter.handle(ContentTypeParameterRouter.java:84)

at com.android.jack.server.router.ContentTypeRouter.handle(ContentTypeRouter.java:82)

at com.android.jack.server.router.ContentTypeRouter.handle(ContentTypeRouter.java:82)

at com.android.jack.server.router.ContentTypeRouter.handle(ContentTypeRouter.java:82)

at com.android.jack.server.router.ContentTypeParameterRouter.handle(ContentTypeParameterRouter.java:84)

at com.android.jack.server.router.ContentTypeRouter.handle(ContentTypeRouter.java:82)

at com.android.jack.server.router.ContentTypeRouter.handle(ContentTypeRouter.java:82)

at com.android.jack.server.router.MethodRouter.handle(MethodRouter.java:67)

at com.android.jack.server.router.RootContainer.handle(RootContainer.java:49)

at org.simpleframework.http.core.RequestDispatcher.dispatch(RequestDispatcher.java:121)

at org.simpleframework.http.core.RequestDispatcher.run(RequestDispatcher.java:103)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

at java.lang.Thread.run(Thread.java:748)

Internal compiler error (version 1.2-rc4 'Carnac' (298900 f95d7bdecfceb327f9d201a1348397ed8a843843 by android-jack-team@google.com)).

Warning: This may have produced partial or corrupted output.

make: *** [build/core/java.mk:731: /home/sagar/aosip/out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/with-local/classes.dex] Error 41

make: *** Waiting for unfinished jobs....

#### make failed to build some targets (07:10:42 (hh:mm:ss)) ####
[Android] DiamondJohn:
Is this method correct?

I was just checking if the following is an acceptable method of doing what I need to do, or if it was a "kludge". It appears to work.

I am trying to include a pre-built APK from a Nougat ROM into my Marshmallow build. If I do it another way, the process attempts to ODEX the APK which fails (and stops the build). From my understanding this process was changed between MM and N.

The APK I am including is Jello from 14.1 into my 13.0 build. The changes I have made (apart from removing the other browser(s)) are:

1. To vendor/cm/config/common.mk i have added the lines:

# Copy Jelly
PRODUCT_PACKAGES += \
Jelly

2. Created a folder "packages/apps/Jelly" in which I placed the "Jelly.apk" and an "Android.mk" file made up of:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

# Copies Jelly.apk to /system/app/Jelly
LOCAL_MODULE := Jelly
LOCAL_SRC_FILES := $(LOCAL_MODULE).apk
#LOCAL_MODULE_CLASS := APPS
LOCAL_MODULE_CLASS := ETC
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_PATH := $(TARGET_OUT_APPS)/$(LOCAL_MODULE)
# tell dexopt not to try resigning the apk
LOCAL_CERTIFICATE := PRESIGNED

include $(BUILD_PREBUILT)

As I said, the above appears to do what I want (I have yet to flash and test one of my builds), but it may be a Kludge so was just checking if there is a better/correct way to do the above?
[Android] ABSathe:
I spent few more hours in resolving this : https://xdaforums.com/chef-central/android/guide-android-rom-development-t2814763/post72472396

Came to know that

If I can

1)Skip recovery building (not sure how safe it is)

OR

2)Make device tree compatible with aosp recovery

2nd method differed from device to device

So can anyone tell me how can I exclude recovery from getting built ? And is it safe ?

Thanks
[Android] lightwars:
Hey, if you want to exclude building recovery add "TARGET_NO_RECOVERY := true" to your BoardConfig.mk.

This should not build recovery for you or attempt to create a patch, this is the point where your build breaks, but I dunno, cause I havent used that flag before.

In my opinion the error says your set sizes for boot and recovery differs, if I look at your BoardConfig.mk the values really differs. Try setting them the same size and see if error is resolved.
[Android] ABSathe:
Thanks for the flag !

I'll try that

Regarding the mismatched sizes of boot and recovery :

I took those sizes from lineageos official device tree and they are not equal even in the official tree ... I haven't tried building lineage with those trees .. But a lot of users say that they built lineage successfully with those trees ... So I guess the mismatched sizes are fine !

Thanks for that flag again ! I'll try that
[Android] Jamie_oppo:
Guys we need professional help over at the oppo f1f forums.

This picture basically explains the problem. (To do wit backlight in kernel)

Here's the thread.

https://xdaforums.com/oppo-f1/development/dev-cyanogenmod-14-1-oppo-f1-f1f-t3519981/page34

Any help would help would be appreciated.

https://github.com/LineageOS/android_kernel_oppo_msm8939
[Android] Garv Maggu:
I successfully compiled Resurrection Remix 5.8.3 for my device Moto G5 Plus. Successfully booted it but the only bug is camera and flashlight, it's not working and always showing error while opening an application that uses camera (Snapchat, WhatsApp, Open Camera etc). I tried recompiling it also but the it is the same. The compiling went without a single error. I used intact Resurrection Remix rom source and my intact Lineage OS Device tree without making even a single change and whole compiling completed without even a single error but still camera and flashlight are not working.

Tree - https://github.com/boulzordev/android_device_motorola_potter

Kernel - https://github.com/boulzordev/android_kernel_motorola_msm8953

Vendor - https://github.com/boulzordev/android_vendor_motorola_potter

Any ideas what to do and how to fix it?
[Android] martinusbe:
just remove or comment the sudaemon line in wpa.te
[Android] lightwars:
I'm working on getting LOS14.1 running on my device, at first backlight brightness was set to its maxmium value after booting. Then I noticed the lights.msm8916.so was missing in system/lib/hw. After I placed and old lib lights there and rebooted, the backlight was controllable.

So have you checked if the lib is missing or are there any changes comming from cm-13.0 to cm-14.1? Have you tried replacing the lights.msm8916.so with an older working one from cm-13.0?

If the lib is correct maybe the code in the kernel was altered.
[Android] Ozadroid:
So I am building AOSP with kernel from source.

But I am getting stuck with this error:

ninja: error: 'out/target/product/cancro/kernel', needed by 'out/target/product/cancro/boot.img', missing and no known rule to make it
06:01:43 ninja failed with: exit status 1
make: *** [run_soong_ui] Error 1

This is my local_manifest:

<project path="device/xiaomi/cancro" name="mi3-dev/android_device_xiaomi_cancro" remote="github" revision="mnc-dev"/>
<project path="device/xiaomi/cancro/common" name="mi3-dev/android_device_xiaomi_msm8974-common" remote="github" revision="lollipop-mr1"/>
<project path="vendor/xiaomi/cancro" name="mi3-dev/proprietary_vendor_xiaomi" remote="github" revision="mnc-dev"/>
<project path="kernel/xiaomi/cancro" name="mi3-dev/android_kernel_xiaomi_msm8x74pro" remote="github" revision="lollipop-mr1"/>

When I start make, It calls my 'build/core/main.mk', which then calls my 'config.mk via 'include $(BUILD_SYSTEM)/config.mk which then calls 'envsetup.mk via 'include $(BUILD_SYSTEM)/envsetup.mk'.

Then in envsetup.mk it tries to find the BoardConfig.mk via:

board_config_mk := \
$(strip $(sort $(wildcard \
$(SRC_TARGET_DIR)/board/$(TARGET_DEVICE)/BoardConfig.mk \
$(shell test -d device && find -L device -maxdepth 4 -path '*/$(TARGET_DEVICE)/BoardConfig.mk') \
$(shell test -d vendor && find -L vendor -maxdepth 4 -path '*/$(TARGET_DEVICE)/BoardConfig.mk') \
)))
ifeq ($(board_config_mk),)
$(error No config file found for TARGET_DEVICE $(TARGET_DEVICE))
endif
ifneq ($(words $(board_config_mk)),1)
$(error Multiple board config files for TARGET_DEVICE $(TARGET_DEVICE): $(board_config_mk))
endif
include $(board_config_mk)

BoardConfig is in /device/xiaomi/cancro/BoardConfig.mk which it should find from the above piece of code and call for BoardConfigCommon.mk from BoardConfig via include device/xiaomi/cancro/common/BoardConfigCommon.mk.

BoardConfigCommon contains the kernel headers:

COMMON_PATH := device/xiaomi/cancro/common

TARGET_BOARD_KERNEL_HEADERS := $(COMMON_PATH)/kernel-headers

After processing BoardConfigCommon.mk it comes back to BoardConfig.mk and calls include vendor/xiaomi/cancro/cancro/BoardConfigVendor.mk which says the comment and nothing else:

# This file is generated by device/xiaomi/cancro/setup-makefiles.sh

After this I am lost.

The thing is, I think the error that I am getting is being generated from '/Kernel/xiaomi/cancro/AndroidKernel.mk

#Android makefile to build kernel as a part of Android Build
PERL	= perl

KERNEL_TARGET := $(strip $(INSTALLED_KERNEL_TARGET))
ifeq ($(KERNEL_TARGET),)
INSTALLED_KERNEL_TARGET := $(PRODUCT_OUT)/kernel
endif

But I cannot reference AndroidKernel.mk to be called from anywhere after BoardConfig.mk above.

Please someone help me to rectify this.
[Android] MZO:
Is your kernel path correct?
[Android] vjrajr:
Need Help

Hello guys, I'm trying to build a -caf ROM for Redmi 1S (Armani) and i'm getting this error -

" Starting build with ninja

ninja: Entering directory `.'

ninja: error: '/home/VjRaj/sda/out/host/common/obj/JAVA_LIBRARIES/asm-5.0_intermediates/javalib.jar', needed by '/home/VjRaj/sda/out/host/common/obj/JAVA_LIBRARIES/jarjar_intermediates/classes-full-debug.jar', missing and no known rule to make it

make: *** [ninja_wrapper] Error 1 "

OS - CentOS 7 with Android build environment configured.
[Android] Ozadroid:
What do you mean? I don't understand. My kernel sources are in /kernel/xiaomi/canco as I have written in earlier post.
[Android] Garv Maggu:
Your kernel should be in /kernel/xiaomi/msm8974. So you should just change the folder name from cancro to msm8974 or you can just delete your kernel folder and change this in your local manifest and then repo sync :-

<project path="kernel/xiaomi/cancro" name="mi3-dev/android_kernel_xiaomi_msm8x74pro" remote="github" revision="lollipop-mr1"/>
TO
<project path="kernel/xiaomi/msm8974" name="mi3-dev/android_kernel_xiaomi_msm8x74pro" remote="github" revision="lollipop-mr1"/>

This is because under brand name folder comes the folder named your processor type, not your phone's codename.

Hope this helps. :)
[Android] kaibsora:
com.android.phone

So i have built an aosp-caf rom (github is xpureaosp) for motorola clark. and it flashes but com.android.phone has stopped and the phone will not read sim cards or baseband version. i am attaching a logcat
[Android] Ozadroid:
Ok I will try this. So I need to change from device name to CPU name in the whole manifest or just for kernel? Also, it would be really kind of you if you can link me to the makefile which defines this structute for kernels.

Thank you.

Edit: Still the same error.

build/core/base_rules.mk:378: warning: ignoring old commands for target `out/target/product/cancro/system/vendor/lib/libmm-abl.so'
[ 99% 793/794] glob system/nfc/halimpl/bcm2079x/adaptation/*.c
ninja: error: 'out/target/product/cancro/kernel', needed by 'out/target/product/cancro/boot.img', missing and no known rule to make it
05:25:53 ninja failed with: exit status 1

I dont think that has to be CPU name. It should be device name only?
[Android] lightwars:
I would expect something like this in your BoardConfig.mk in your device tree:

TARGET_KERNEL_SOURCE := kernel/xiaomi/msm8974
TARGET_KERNEL_CONFIG := cancro_defconfig

Look at other device trees on github, normally the most people uses /kernel/vendor/platform-name for the kernel source. But it all depends on defining the path to your source, otherwise the build system wont catch it.
[Android] Ozadroid:
ThemeMixEntryColumns and ThemeMixColumns are not defined anywhere as a variable. IDK much about the source tree and its dependancies, but I would look for these two words.

---------- Post added at 09:33 AM ---------- Previous post was at 09:31 AM ----------

Yes I thought so too. And my paths and everything are fine I guess. But I cant figure out why is it calling for having a boot.img when I am building from source.