Reply
Thread Tools
Posts: 635 | Thanked: 1,535 times | Joined on Feb 2014 @ Germany
#661
Which extra lines do you mean, do you have an example?

And which 4 extra lines are you planning to use?
 

The Following 2 Users Say Thank You to mautz For This Useful Post:
edp17's Avatar
Posts: 592 | Thanked: 706 times | Joined on Jul 2019 @ UK
#662
Originally Posted by mautz View Post
Which extra lines do you mean, do you have an example?

And which 4 extra lines are you planning to use?
Apologies, I was not clear. (At all.)

So, I used these:
Code:
<project path="device/lge/hammerhead" name="CyanogenMod/android_device_lge_hammerhead" revision="stable/cm-12.1-YOG4P" />
<project path="kernel/lge/hammerhead" name="CyanogenMod/android_kernel_lge_hammerhead" revision="stable/cm-12.1-YOG4P" />
but I will use these (both forked from CyanogenMod):
Code:
<project path="device/lge/hammerhead" name="edp17/android_device_lge_hammerhead" revision="stable/cm-12.1-YOG4P" />
<project path="kernel/lge/hammerhead" name="edp17/android_kernel_lge_hammerhead" revision="stable/cm-12.1-YOG4P" />
The "extra" 4 lines I planned to use but then dropped the idea when you suggested to not use them were:
Code:
<project path="hybris/droid-hal-version-hammerhead" name="edp17/droid-hal-version-hammerhead-12.1" revision="master" />
<project path="hybris/droid-configs" name="edp17/droid-config-hammerhead-12.1" revision="master" />
<project path="rpm" name="edp17/droid-hal-hammerhead-12.1" revision="master" />
<project path="vendor/lge" name="edp17/proprietary_vendor_lge" revision="stable/cm-12.1-YOG4P" />
My questions were about these last 4 lines. I have mock them up for the hammerhead because I have seen them in other devices' manifest files. Do you know the purpose of these?
 

The Following User Says Thank You to edp17 For This Useful Post:
Posts: 635 | Thanked: 1,535 times | Joined on Feb 2014 @ Germany
#663
You have to make these repositories during the Adaptation. These contain the necessary files, to get everything working. This is explained in Chapter 7 of the HADK.

But first you need to get a working kernel after checking out the CM12.1 base.
 

The Following 2 Users Say Thank You to mautz For This Useful Post:
edp17's Avatar
Posts: 592 | Thanked: 706 times | Joined on Jul 2019 @ UK
#664
Originally Posted by mautz View Post
You have to make these repositories during the Adaptation. These contain the necessary files, to get everything working. This is explained in Chapter 7 of the HADK.

But first you need to get a working kernel after checking out the CM12.1 base.
Yes, a working kernel would be very good for start.

I just have checked chapter 7 in the HADK.
Indeed it says I need to push some stuff into github, then upstreamed into https://github.com/mer-hybris and then create a PR in the appropriate branch. Then after these steps, I can add some extra lines into my local manifest.
As I said, I don't want to push anything to github yet. However I will need to create the rpm/droid-hal-version-hammerhead.spec anyway if I would like to go forward to package the HAL.

By the way, I expected to see an example hammerhead.xml in the 12.1 branch here as probably I am not the first who is doing this port. But there is no hammerhead.xml in there. Only bacon, espresso3g, falcon, kis3, onyx and pollux. I have checked all the 30 forks of mer-hybris/local_manifests and there is no file for the hammerhead in the hybris-12.1 branch.

I am also not sure why cannot add those lines into the local manifest before building the kernel, but I believe the HADK and follow it to avoid problems.

An extra question: at chapter 8.5 (Building the image with MIC) it says I need to use the latest non early access version at the release. That is 3.2.0.12 however this HADK I am using is about 3.1.0.0. So what version number should I st at the RELEASE?
3.1.0.11 as the HADK shows or 3.2.0.12 as the HADK suggests from the wiki page?
 

The Following User Says Thank You to edp17 For This Useful Post:
Posts: 635 | Thanked: 1,535 times | Joined on Feb 2014 @ Germany
#665
You don't need to upload anything to github if you do not want to.

The example of the hammerhead.xml is in the hadk, just replace cm-11.0 with cm-12.1 and you are good to go. Just do step by step as it is in the HADK,

You can use the latest version 3.2.0.12 to build everything at the end.
 

The Following 2 Users Say Thank You to mautz For This Useful Post:
edp17's Avatar
Posts: 592 | Thanked: 706 times | Joined on Jul 2019 @ UK
#666
Thank you. Now I started to compile the kernel (step 5.4 in the HADK), but the command 'make -j$(nproc --all) hybris-hal' failed.
Error:
Code:
The present kernel configuration has modules disabled.
Type 'make config' and enable loadable module support.
Then build a kernel with module support enabled.

make[2]: *** [modules_install] Error 1
make[1]: *** [sub-make] Error 2
make[1]: Leaving directory `/home/edp17/mer/android/droid/kernel/lge/hammerhead'
make: [TARGET_KERNEL_BINARIES] Error 2 (ignored)
mdpath=`find /home/edp17/mer/android/droid/out/target/product/hammerhead/system/lib/modules -type f -name modules.order`; if [ "$mdpath" != "" ];then mpath=`dirname $mdpath`; ko=`find $mpath/kernel -type f -name *.ko`; for i in $ko; do arm-eabi-strip --strip-unneeded $i; mv $i /home/edp17/mer/android/droid/out/target/product/hammerhead/system/lib/modules/; done; fi
mdpath=`find /home/edp17/mer/android/droid/out/target/product/hammerhead/system/lib/modules -type f -name modules.order`; if [ "$mdpath" != "" ];then mpath=`dirname $mdpath`; rm -rf $mpath; fi

#### make failed to build some targets (14:43 (mm:ss)) ####
Then I used the suggested command 'make config' but that also ended in error:
Code:
No private recovery resources for TARGET_DEVICE hammerhead
make: *** No rule to make target `config'.  Stop.

#### make failed to build some targets (22 seconds) ####
Therefore I tried the 'make -j$(nproc --all) hybris-hal' command again. But I got:
Code:
perl: warning: Falling back to the standard locale ("C").
hybris/hybris-boot/Android.mk:71: ********************* /boot appears to live on /dev/block/platform/msm_sdcc.1/by-name/boot
hybris/hybris-boot/Android.mk:72: ********************* /data appears to live on /dev/block/platform/msm_sdcc.1/by-name/userdata
PRODUCT_COPY_FILES device/lge/hammerhead/apns-full-conf.xml:system/etc/apns-conf.xml ignored.
No private recovery resources for TARGET_DEVICE hammerhead
make  -C kernel/lge/hammerhead O=/home/edp17/mer/android/droid/out/target/product/hammerhead/obj/KERNEL_OBJ ARCH=arm CROSS_COMPILE="/home/edp17/mer/android/droid/prebuilts/misc/linux-x86/ccache/ccache arm-eabi-" VARIANT_DEFCONFIG= SELINUX_DEFCONFIG= cyanogenmod_hammerhead_defconfig
make[1]: Entering directory `/home/edp17/mer/android/droid/kernel/lge/hammerhead'
target Symbolic: libc (/home/edp17/mer/android/droid/out/target/product/hammerhead/symbols/system/lib/libc.so)
Install: /home/edp17/mer/android/droid/out/target/product/hammerhead/root/property_contexts
Install: /home/edp17/mer/android/droid/out/target/product/hammerhead/root/seapp_contexts
/home/edp17/mer/android/droid/out/target/product/hammerhead/obj/ETC/file_contexts_intermediates/file_contexts: Multiple different specifications for /sys/devices/virtual/graphics/fb0/rgb  (u:object_r:livedisplay_sysfs:s0 and u:object_r:sysfs_hardware:s0).
Error loading context file from /home/edp17/mer/android/droid/out/target/product/hammerhead/obj/ETC/file_contexts_intermediates/file_contexts
make: *** [/home/edp17/mer/android/droid/out/target/product/hammerhead/obj/ETC/file_contexts_intermediates/file_contexts] Error 4
make: *** Deleting file `/home/edp17/mer/android/droid/out/target/product/hammerhead/obj/ETC/file_contexts_intermediates/file_contexts'
make: *** Waiting for unfinished jobs....
  GEN     /home/edp17/mer/android/droid/out/target/product/hammerhead/obj/KERNEL_OBJ/Makefile
#
# configuration written to .config
#
make[1]: Leaving directory `/home/edp17/mer/android/droid/kernel/lge/hammerhead'

#### make failed to build some targets (19 seconds) ####
It reminds me for the old days, back to 20+ years ago when I compiled the kernel for my PC. However there was the good old 'make menuconfig' command to help with the configuration file.
 

The Following User Says Thank You to edp17 For This Useful Post:
Posts: 635 | Thanked: 1,535 times | Joined on Feb 2014 @ Germany
#667
You can edit the defconfig files with an editor. The defconfig you need to edit is arch/arm/configs/cyanogenmod_hammerhead_defconfig.
Just enable the modules support(CONFIG_MODULES=y) and try again.

EDIT:
Maybe you need to do a 'make clean' before your next compile try.
Or copy your modified defconfig file to .config in your kernel/lge/hammerhead directory or do a 'make cyanogenmod_hammerhead_defconfig' before doing make hybris-hal.

Last edited by mautz; 2019-11-12 at 23:04.
 

The Following 2 Users Say Thank You to mautz For This Useful Post:
edp17's Avatar
Posts: 592 | Thanked: 706 times | Joined on Jul 2019 @ UK
#668
Originally Posted by mautz View Post
You can edit the defconfig files with an editor. The defconfig you need to edit is arch/arm/configs/cyanogenmod_hammerhead_defconfig.
Just enable the modules support(CONFIG_MODULES=y) and try again.
Thank you! That was it.

Plus it seems my system doesn't like the 'make -j$(nproc --all) hybris-hal' or 'make -j2 hybris-hal' commands. Both gave me the 'make: *** Waiting for unfinished jobs....' error.
Now it is running with 'make hybris-hal'. Fingers crossed.
I will report once it finished or errored.

Edit: I tried without the 'make clean'. It is running ...

Last edited by edp17; 2019-11-12 at 23:08. Reason: Added extra info
 

The Following 2 Users Say Thank You to edp17 For This Useful Post:
edp17's Avatar
Posts: 592 | Thanked: 706 times | Joined on Jul 2019 @ UK
#669
My happy was too early. This time it ran longer indeed but is still complaining about the missing file_contexts:
Code:
target Prebuilt:  (/home/edp17/mer/android/droid/out/target/product/hammerhead/kernel)
/home/edp17/mer/android/droid/out/target/product/hammerhead/obj/ETC/file_contexts_intermediates/file_contexts: Multiple different specifications for /sys/devices/virtual/graphics/fb0/rgb  (u:object_r:livedisplay_sysfs:s0 and u:object_r:sysfs_hardware:s0).
Error loading context file from /home/edp17/mer/android/droid/out/target/product/hammerhead/obj/ETC/file_contexts_intermediates/file_contexts
make: *** [/home/edp17/mer/android/droid/out/target/product/hammerhead/obj/ETC/file_contexts_intermediates/file_contexts] Error 4
make: *** Deleting file `/home/edp17/mer/android/droid/out/target/product/hammerhead/obj/ETC/file_contexts_intermediates/file_contexts'

#### make failed to build some targets (21:57 (mm:ss)) ####
Now, I try the 'make clean' then start again.
 

The Following User Says Thank You to edp17 For This Useful Post:
edp17's Avatar
Posts: 592 | Thanked: 706 times | Joined on Jul 2019 @ UK
#670
No, the 'make clean' didn't make any difference:
Code:
Install: /home/edp17/mer/android/droid/out/host/linux-x86/bin/checkfc
/home/edp17/mer/android/droid/out/target/product/hammerhead/obj/ETC/file_contexts_intermediates/file_contexts: Multiple different specifications for /sys/devices/virtual/graphics/fb0/rgb  (u:object_r:livedisplay_sysfs:s0 and u:object_r:sysfs_hardware:s0).
Error loading context file from /home/edp17/mer/android/droid/out/target/product/hammerhead/obj/ETC/file_contexts_intermediates/file_contexts
make: *** [/home/edp17/mer/android/droid/out/target/product/hammerhead/obj/ETC/file_contexts_intermediates/file_contexts] Error 4
make: *** Deleting file `/home/edp17/mer/android/droid/out/target/product/hammerhead/obj/ETC/file_contexts_intermediates/file_contexts'

#### make failed to build some targets (04:35 (mm:ss)) ####
 

The Following User Says Thank You to edp17 For This Useful Post:
Reply

Tags
hammerhead, nexus5, sailfishos, sfdroid


 
Forum Jump


All times are GMT. The time now is 11:27.