Related
Ubuntu Touch Preview for the SGH-T889 Note II
I am posting this so others that are interested in building Ubuntu Touch for the SGH-T889 can have a better starting point.. As of right now this will not build a booting ROM as it is still a work in progress, but it should build. I have some edititng I need to do to the guide but knot able to do just yet, I will get this done as soon as possible.
Edit: For download link, instructions on how to flash and what is working go to the second post.
Thanks!
Thanks to CyanogenMod, Canonical Ltd, drapalyuk, chasmodo, Gerrett,codeworkx, GhostOfTheNet, mgale88, and a special thanks to my friend DragunKorr. Sorry if I missed anyone, if I find I have I will update the thanks section.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Official Porting guide
How to build
To start with we you should be running Ubuntu 10.04 or higher. You might be able to use another Linux distro, but I have not seen anyone posting they were running a different Linux distro and building for the Preview. You also need to have a android build environment already set up. Now start by getting the additional packages you will need. Open a terminal by holding ctrl+Alt+t and paste the below command into the terminal.
Code:
$ sudo apt-get install git gnupg flex bison gperf build-essential \
zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \
libgl1-mesa-dev g++-multilib mingw32 tofrodos \
python-markdown libxml2-utils xsltproc zlib1g-dev:i386 schedtool
Next you need to get the phablet-tools package.
Code:
$ sudo add-apt-repository ppa:phablet-team/tools
$ sudo apt-get update
$ sudo apt-get install phablet-tools android-tools-adb android-tools-fastboot
Next you need to create a folder to sync your Android source tree too. You can name this folder anything you like. But for the purpose of this guide it will be named UPP (UbuntuPhonePort).
Code:
$ mkdir UPP
Now you need to set up the .repo in your UPP folder. To do this you need to cd to your UPP folder and run the following command in terminal.
Code:
$ phablet-dev-bootstrap UPP
Enter your name and email when pronpted for them then answer yes and press enter. This will set up your repo and start your sync. Be prepared this will take a good while. If you stop for some reason you can resume your sync by using the following command. (You probably will have to)
Code:
$ phablet-dev-bootstrap -c UPP
When your sync is done you need to set up your device tree for this you can either use CyanogenMod repositories on github or you can use my github repositories. I forked all of my repositories straight from CM and have made edits to allow it to compile.
You will have to be in your UPP folder in your file explorer and press ctrl+h to see the .repo folder. You will need to add the following lines to the manifest.xml in the .repo folder by opening the manifest.xml with a text editor. For this guide I am using my repositories but you can easily see how to use any other repositories here. Doing this will let the repositories you use sync if you do a resync of your work tree.
Code:
<project path="device/samsung/t0lte" name="T-Macgnolia/android_device_samsung_t0lte" remote="github" revision="cm-10.1" />
<project path="kernel/samsung/smdk4412" name="T-Macgnolia/android_kernel_samsung_smdk4412" remote="github" revision="cm-10.1" />
<project path="hardware/samsung" name="T-Macgnolia/android_hardware_samsung" remote="github" revision="cm-10.1" />
<project path="device/samsung/smdk4412-common" name="T-Macgnolia/android_device_samsung_smdk4412-common" remote="github" revision="cm-10.1" />
Alternatively you can clone your device repositories. For each folder you need to cd to where the folder needs to go. For example if you was cloning the device folder you would type in the following to get to the correct directory.
Code:
$ cd UPP/device/samsung
Here is the clone commands for all for of my repositories.
Code:
git clone git://github.com/T-Macgnolia/android_device_samsung_t0lte.git -b cm-10.1 t0lte
git clone git://github.com/T-Macgnolia/android_device_samsung_smdk4412-common.git -b cm-10.1 smdk4412-common
git clone git://github.com/T-Macgnolia/android_kernel_samsung_smdk4412.git -b cm-10.1 smdk4412
git clone git://github.com/T-Macgnolia/android_hardware_samsung.git -b cm-10.1 samsung
Last step before building is to flash a CM nightly to your device so you can pull your proprietary files from your device. You can pull them from a stock ROM but stock ROMs do not have all the files where as CM or others source built ROMs will. Because of a problem with the new mali driver r3p1I suggest you use this CM nightly build as it is the only official CM build before the 22nd of Febuary. Now you need to cd to your device folder like so.
Code:
$ cd UPP/device/samsung/t0lte
Now connect your device via USB to your computer, make sure you have ADB Debugging on in settings and that you allow the device to communicate with your computer. Now run the following command.
Code:
$ ./extract-files.sh
Now if you used my repositories you can jump ahead to the bottom of this post for the build commands. If you did not you may want to keep reading..
These changes are per the official guide.
Go to device/samsung/t0lte/rootdir/fstab.smdk4x12 and remove the "nosuid" from the following line.
Code:
/dev/block/mmcblk0p16 /data ext4 noatime,nosuid,nodev,discard,noauto_da_alloc,journal_async_commit,errors=panic
Go to kernel/samsung/smdk4412/arch/arm/configs/ cyanogenmod_t0lte_defconfig and add the following to the file in the "# Userspace binary formats" section of the file at line 750.
Code:
CONFIG_SYSVIPC=y
CONFIG_NAMESPACES=y
CONFIG_UTS_NS=y
CONFIG_IPC_NS=y
CONFIG_USER_NS=y
CONFIG_PID_NS=y
CONFIG_NET_NS=y
CONFIG_DEVTMPFS=y
CONFIG_DEVPTS_MULTIPLE_INSTANCES=y
CONFIG_FSNOTIFY=y
CONFIG_DNOTIFY=y
CONFIG_INOTIFY_USER=y
CONFIG_FANOTIFY=y
CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y
CONFIG_FSNOTIFY=y
CONFIG_SWAP=y
# CONFIG_ANDROID_PARANOID_NETWORK is not set
Go to device/samsung/t0lte/init.smdk4x12.rc and add the following beneath line 185.
Code:
chmod 0666 /sys/class/backlight/panel/brightness
Changes I made to get to build.
In device/samsung/t0lte/t0lte.mk I commited line 50 like below.
Code:
#PRODUCT_PACKAGES += \
GalaxyNote2Settings
Also in device/samsung/t0lte/t0lte.mk removed below line from PRODUCT_COPY_FILES += \
Code:
packages/apps/Nfc/migrate_nfc.txt:system/etc/updatecmds/migrate_nfc.txt \
Remove libandroid_runtime \ from the line 33 of hardware/samsung/exynos/multimedia/openmax/osal/Android.mk.
Last remove lines 2671 and 2674 in device/samsung/t0lte/audio/audio_hw.c. below is what it should look like before and after.
Before:
Code:
// Wideband AMR
ret = str_parms_get_str(parms, "wb_amr", value, sizeof(value));
if (ret >= 0) {
if (csd_wide_voice == NULL) {
ALOGE("dlsym: Error:%s Loading csd_wide_voice", dlerror());
} else {
if (strcmp(value, "on") == 0) {
ALOGE("%s: enabling csd_wide_voice", __func__);
csd_wide_voice(VX_WB_SAMPLING_RATE);
} else {
ALOGE("%s: disabling csd_wide_voice", __func__);
csd_wide_voice(VX_NB_SAMPLING_RATE);
After:
Code:
// Wideband AMR
ret = str_parms_get_str(parms, "wb_amr", value, sizeof(value));
if (ret >= 0) {
if (csd_wide_voice == NULL) {
ALOGE("dlsym: Error:%s Loading csd_wide_voice", dlerror());
} else {
if (strcmp(value, "on") == 0) {
ALOGE("%s: enabling csd_wide_voice", __func__);
} else {
ALOGE("%s: disabling csd_wide_voice", __func__);
Missing Lib Files
This is a list of the missing lib files, where to get them, and where to pit them.
Code:
After pulling proprietary files from my device I went to system/lib of the CM ROM and copied and pasted the following lib files to vendor/samsung/t0lte/proprietary/system/lib of my work tree.
libandroid_runtime.so
libdvm.so
libharfbuzz.so
libhwui.so
libnativehelper.so
libmali.so
libUMP.so
libfimc.so
In system/lib/hw in the CM ROM copied and pasted the following lib files to vendor/samsung/t0lte/proprietary/system/lib/hw of my work tree.
camera.exynos4.so
gps.goldfish.so
In /system/lib/ of a stock ROM copied and pasted the following lib file to vendor/samsung/t0lte/proprietary/system/lib of my work tree.
libfactoryutil.so
In systemlib/egl of the CM ROM copied of and pasted the following lib files to vendor/samsung/t0lte/proprietary/system/lib/egl of my work tree.
libEGL_mali.so
libGLESv1_CM_mali.so
libGLESv2_mali.so
In system/vendor/lib of the CM ROM copied and pasted the following lib files to vendor/samsung/t0lte/proprietary/system/vendor/lib of my work tree.
libpn544_fw.so
mfc_fw.bin
In system/cameradata of the CM ROM copied and pasted the following files to vendor/samsung/t0lte/proprietary/system/cameradata of my work tree.
datapattern_420sp.yuv
datapattern_front_420sp.yuv
In system/bin of the CM ROM copied and pasted the following files to vendor/samsung/t0lte/proprietary/system/bin of myr work tree.
bcm4334.hcd
bcm4334_murata.hcd
bcm4334_semcosh.hcd
How to make to make the compiler use the added lib files. The lines highlighted are the ones I added.
Code:
# Copyright (C) 2013 The CyanogenMod Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
LOCAL_PATH := vendor/samsung/t0lte
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/proprietary/system/bin/at_distributor:system/bin/at_distributor \
$(LOCAL_PATH)/proprietary/system/bin/efsks:system/bin/efsks \
$(LOCAL_PATH)/proprietary/system/bin/gsiff_daemon:system/bin/gsiff_daemon \
$(LOCAL_PATH)/proprietary/system/bin/ks:system/bin/ks \
$(LOCAL_PATH)/proprietary/system/bin/netmgrd:system/bin/netmgrd \
$(LOCAL_PATH)/proprietary/system/bin/qcks:system/bin/qcks \
$(LOCAL_PATH)/proprietary/system/bin/qmiproxy:system/bin/qmiproxy \
$(LOCAL_PATH)/proprietary/system/bin/qmuxd:system/bin/qmuxd \
$(LOCAL_PATH)/proprietary/system/bin/rild:system/bin/rild \
$(LOCAL_PATH)/proprietary/system/bin/sec-ril:system/bin/sec-ril \
$(LOCAL_PATH)/proprietary/system/bin/sensorhubservice:system/bin/sensorhubservice \
$(LOCAL_PATH)/proprietary/system/bin/smdexe:system/bin/smdexe \
$(LOCAL_PATH)/proprietary/system/etc/Diag.cfg:system/etc/Diag.cfg \
$(LOCAL_PATH)/proprietary/system/etc/Diag_zero.cfg:system/etc/Diag_zero.cfg \
$(LOCAL_PATH)/proprietary/system/lib/libakm.so:system/lib/libakm.so \
$(LOCAL_PATH)/proprietary/system/lib/libatparser.so:system/lib/libatparser.so \
$(LOCAL_PATH)/proprietary/system/lib/libcsd-client.so:system/lib/libcsd-client.so \
$(LOCAL_PATH)/proprietary/system/lib/libdiag.so:system/lib/libdiag.so \
$(LOCAL_PATH)/proprietary/system/lib/libdsi_netctrl.so:system/lib/libdsi_netctrl.so \
$(LOCAL_PATH)/proprietary/system/lib/libdsutils.so:system/lib/libdsutils.so \
$(LOCAL_PATH)/proprietary/system/lib/libfactoryutil.so:system/lib/libfactoryutil.so \
$(LOCAL_PATH)/proprietary/system/lib/libgps.so:system/lib/libgps.so \
$(LOCAL_PATH)/proprietary/system/lib/libgps.utils.so:system/lib/libgps.utils.so \
$(LOCAL_PATH)/proprietary/system/lib/libidl.so:system/lib/libidl.so \
$(LOCAL_PATH)/proprietary/system/lib/libloc_adapter.so:system/lib/libloc_adapter.so \
$(LOCAL_PATH)/proprietary/system/lib/libloc_api_v02.so:system/lib/libloc_api_v02.so \
$(LOCAL_PATH)/proprietary/system/lib/libloc_eng.so:system/lib/libloc_eng.so \
$(LOCAL_PATH)/proprietary/system/lib/libnetmgr.so:system/lib/libnetmgr.so \
$(LOCAL_PATH)/proprietary/system/lib/libomission_avoidance.so:system/lib/libomission_avoidance.so \
$(LOCAL_PATH)/proprietary/system/lib/libqcci_legacy.so:system/lib/libqcci_legacy.so \
$(LOCAL_PATH)/proprietary/system/lib/libqdi.so:system/lib/libqdi.so \
$(LOCAL_PATH)/proprietary/system/lib/libqdp.so:system/lib/libqdp.so \
$(LOCAL_PATH)/proprietary/system/lib/libqmi.so:system/lib/libqmi.so \
$(LOCAL_PATH)/proprietary/system/lib/libqmi_cci.so:system/lib/libqmi_cci.so \
$(LOCAL_PATH)/proprietary/system/lib/libqmi_client_qmux.so:system/lib/libqmi_client_qmux.so \
$(LOCAL_PATH)/proprietary/system/lib/libqmi_common_so.so:system/lib/libqmi_common_so.so \
$(LOCAL_PATH)/proprietary/system/lib/libqmi_csi.so:system/lib/libqmi_csi.so \
$(LOCAL_PATH)/proprietary/system/lib/libqmi_encdec.so:system/lib/libqmi_encdec.so \
$(LOCAL_PATH)/proprietary/system/lib/libqmiservices.so:system/lib/libqmiservices.so \
$(LOCAL_PATH)/proprietary/system/lib/libril.so:system/lib/libril.so \
$(LOCAL_PATH)/proprietary/system/lib/libril-qc-qmi-1.so:system/lib/libril-qc-qmi-1.so \
$(LOCAL_PATH)/proprietary/system/lib/libril-qcril-hook-oem.so:system/lib/libril-qcril-hook-oem.so \
$(LOCAL_PATH)/proprietary/system/lib/libsecnativefeature.so:system/lib/libsecnativefeature.so \
$(LOCAL_PATH)/proprietary/system/lib/libsecril-client.so:system/lib/libsecril-client.so \
$(LOCAL_PATH)/proprietary/system/lib/libsensorhubservice.so:system/lib/libsensorhubservice.so \
$(LOCAL_PATH)/proprietary/system/lib/hw/vendor-camera.exynos4.so:system/lib/hw/vendor-camera.exynos4.so \
$(LOCAL_PATH)/proprietary/system/lib/hw/gps.default.so:system/lib/hw/gps.default.so \
$(LOCAL_PATH)/proprietary/system/lib/hw/sensorhubs.smdk4x12.so:system/lib/hw/sensorhubs.smdk4x12.so \
$(LOCAL_PATH)/proprietary/system/lib/hw/sensors.smdk4x12.so:system/lib/hw/sensors.smdk4x12.so \
$(LOCAL_PATH)/proprietary/system/usr/idc/sec_e-pen.idc:system/usr/idc/sec_e-pen.idc \
$(LOCAL_PATH)/proprietary/system/usr/keylayout/sec_e-pen.kl:system/usr/keylayout/sec_e-pen.kl \
$(LOCAL_PATH)/proprietary/system/usr/keylayout/sec_touchkey.kl:system/usr/keylayout/sec_touchkey.kl \
$(LOCAL_PATH)/proprietary/system/vendor/firmware/SlimISP_GK.bin:system/vendor/firmware/SlimISP_GK.bin \
$(LOCAL_PATH)/proprietary/system/vendor/firmware/SlimISP_ZK.bin:system/vendor/firmware/SlimISP_ZK.bin[COLOR="Red"] \
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/proprietary/system/lib/libandroid_runtime.so:system/lib/libandroid_runtime.so \
$(LOCAL_PATH)/proprietary/system/lib/libdvm.so:system/lib/libdvm.so \
$(LOCAL_PATH)/proprietary/system/lib/libharfbuzz.so:system/lib/libharfbuzz.so \
$(LOCAL_PATH)/proprietary/system/lib/libhwui.so:system/lib/libhwui.so \
$(LOCAL_PATH)/proprietary/system/lib/libnativehelper.so:system/lib/libnativehelper.so \
$(LOCAL_PATH)/proprietary/system/lib/libMali.so:system/lib/libMali.so \
$(LOCAL_PATH)/proprietary/system/lib/libUMP.so:system/lib/libUMP.so \
$(LOCAL_PATH)/proprietary/system/lib/lib/libfimc.so:system/lib/libfimc.so \
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/proprietary/system/lib/hw/camera.exynos4.so:system/lib/hw/camera.exynos4.so \
$(LOCAL_PATH)/proprietary/system/lib/hw/gps.goldfish.so:system/lib/hw/gps.goldfish.so \
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/proprietary/system/lib/egl/libEGL_mali.so:system/lib/egl/libEGL_mali.so \
$(LOCAL_PATH)/proprietary/system/lib/egl/libGLESv1_CM_mali.so:system/lib/egl/libGLESv1_CM_mali.so \
$(LOCAL_PATH)/proprietary/system/lib/egl/libGLESv2_mali.so:system/lib/egl/libGLESv_mali.so \
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/proprietary/system/vendor/firmware/libpn544_fw.so:system/vendor/firmware/libpn544_fw.so \
$(LOCAL_PATH)/proprietary/system/vendor/firmware/mfc_fw.bin:system/vendor/firmware/mfc_fw.bin \
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/proprietary/system/cameradata/datapattern_420sp.yuv:system/cameradata/datapattern_420sp.yuv \
$(LOCAL_PATH)/proprietary/system/cameradata/datapattern_front_420sp.yuv:system/cameradata/datapattern_front_420sp.yuv \
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/proprietary/system/bin/bcm4334.hcd:system/bin/bcm4334.hcd \
$(LOCAL_PATH)/proprietary/system/bin/bcm4334_murata.hcd:system/bin/bcm4334_murata.hcd \
$(LOCAL_PATH)/proprietary/system/bin/bcm4334_semcosh.hcd:system/bin/bcm4334_semcosh.hcd
[/COLOR]
BUILD COMMANDS
Code:
$ . build/envsetup.sh
$ brunch full_t0lte-userdebug
It will make a cm.zip and a full_t0lte-ota-eng. username.zip in UPP/out/target/product/t0lt. You can use either one, I was told that the full_t0lte zip is not optimized but to be honest I do not know why it makes two zip files.
Thanks to mgale88 we now have a build that will boot, it is still very rough and very much pre alpha but it does boot.Here is a link to his github.
What is working:
It boots that is pretty much it. (still has graphics issues)
What does not work:
No cellular service
No WiFi
No Bluetooth
The list goes on and on
Downloads
cm-10.1-20130317-UTOUCH2-t0lte.zip
quantal-preinstalled-phablet-armhf.zip
How to install
To install you need to download the cm-10.1-20130317-UTOUCH2-t0lte.zip latest quantal-preinstalled-phablet-armhf.zip. Then preforme a full wipe of cache, delvik cache, factory reset, and system. Then flash the two files in the order given below.
1.cm-10.1-20130317-UTOUCH2-t0lte.zip
2.quantal-preinstalled-phablet-armhf.zip
3.Reboot
Reserved 2
Looks absolutely sickkk!
Re: Ubuntu Touch Preview for the SGH-T889 Note II
I will test it when it is bootable
Sent from my SGH-T889 using xda premium
Re: Ubuntu Touch Preview for the SGH-T889 Note II
Does anyone know how often the ubuntu touch source is going to be updated and when it is will that mean having to rebuild everything from scratch to port it over?
Sent from my T889V on WIND Mobile using xda app-developers app
tppickles said:
Does anyone know how often the ubuntu touch source is going to be updated and when it is will that mean having to rebuild everything from scratch to port it over?
Sent from my T889V on WIND Mobile using xda app-developers app
Click to expand...
Click to collapse
Going by what I know unless Canonical makes some changes to the .mk and config files for the parts of Android that it uses you should not have to make any changes to the device tree when they start rolling out updates because you get the actual Ubuntu part comes from them, you do not compile. It. See the Ubu tu Touch runs in a container in Android right now. The Android parts you have to compile is just there to make it easier to port to Android devices right now at least that is my opinion. But Canonical has put hints in the Android source and the official porting giude they have that they do have plans on changing things up some in the future.
id probably try this out but it looks too much like miui to me.
fix-this! said:
id probably try this out but it looks too much like miui to me.
Click to expand...
Click to collapse
Updated the op with more details on what changes to make per the official guide and per what I did to get it to build.
Re: Ubuntu Touch Preview for the SGH-T889 Note II
Following with interest...
Sent from my GT-N7105 using xda app-developers app
Re: Ubuntu Touch Preview for the SGH-T889 Note II
Definitely following this but not 100% sure about switching to it yet looks like alot to switch over to and switching back?
Sent from my SGH-T889 using xda premium
Building a brand new build from a new sync. Took 9 hours for a fresh sync, a little over 8 hours of getting my working folder set up to build. XDA Senior Member Gerrett made a great post today about the work that is going on for the n7000 Note II. I went through his updated get hub and made all the changes I needed to match his git hub. The two devices are very close to the same so this should work. It is still building right now. I hope to post back later with a booting build. Wish me luck.
Re: Ubuntu Touch Preview for the SGH-T889 Note II
T-Macgnolia said:
Building a brand new build from a new sync. Took 9 hours for a fresh sync, a little over 8 hours of getting my working folder set up to build. XDA Senior Member Gerrett made a great post today about the work that is going on for the n7000 Note II. I went through his updated get hub and made all the changes I needed to match his git hub. The two devices are very close to the same so this should work. It is still building right now. I hope to post back later with a booting build. Wish me luck.
Click to expand...
Click to collapse
I hope it works
Sent from my SGH-T889 using xda premium
Bummer it stopped compiling right after I had posted my last post but I got that error fixred and started building again. It compiled for a good while very close to the end and stopped again. Only this time I do not know why because it is calling for a file in prebuilt/gcc in my build folder but I do not have a prebuilt/gcc, not even in my old work folder that will still compile. I will have to come back tomorrow and see if I can get it figured out. Thought for sure I had it this go around.
I am going to bed tonight no all nighter for me tonight. I will work on it some more tomorroow.
maaany questions
T-Macgnolia said:
Bummer it stopped compiling right after I had posted my last post but I got that error fixred and started building again. It compiled for a good while very close to the end and stopped again. Only this time I do not know why because it is calling for a file in prebuilt/gcc in my build folder but I do not have a prebuilt/gcc, not even in my old work folder that will still compile. I will have to come back tomorrow and see if I can get it figured out. Thought for sure I had it this go around.
I am going to bed tonight no all nighter for me tonight. I will work on it some more tomorroow.
Click to expand...
Click to collapse
oh man that sucks, for some reasons mine still doesn't want to work... I guess its because I trying it on a VM, but it should work the same. I will post my output from terminal tomorrow...
---------- Post added at 08:30 AM ---------- Previous post was at 08:06 AM ----------
Code:
device/samsung/smdk4412-common/camerawrapper/CameraWrapper.cpp: In function 'char* camera_fixup_setparams(int, const char*)':
device/samsung/smdk4412-common/camerawrapper/CameraWrapper.cpp:130:16: error: 'KEY_CITYID' is not a member of 'android::CameraParameters'
device/samsung/smdk4412-common/camerawrapper/CameraWrapper.cpp: In function 'int camera_device_open(const hw_module_t*, const char*, hw_device_t**)':
device/samsung/smdk4412-common/camerawrapper/CameraWrapper.cpp:514:134: warning:
suggest parentheses around assignment used as truth value [-Wparentheses]
make: *** [/home/petruv/UPP/out/target/product/t0lte/obj/SHARED_LIBRARIES/camera .exynos4_intermediates/CameraWrapper.o] Error 1
make: *** Waiting for unfinished jobs....
external/sqlite/dist/sqlite3.c: In function 'fts3SnippetFunc':
external/sqlite/dist/sqlite3.c:129881:11: warning: 'iS' may be used uninitialized in this function [-Wmaybe-uninitialized]
external/sqlite/dist/sqlite3.c:129873:13: note: 'iS' was declared here
make: *** wait: No child processes. Stop.
[email protected]:~/UPP$
That is what I get when I try to make the built. I followed this guide
I had to do this:
Code:
$ cd device/samsung/t0lte
$ cp t0lte.mk full_t0lte.mk
so I can get passed the error where it says its missing "full_t0lte.mk".
Also, I did:
Code:
$ brunch t0lte
instead of
Code:
$ brunch full_t0lte-userdebug
because it was saying it couldn't find this device and was trying to get them from CyanogenMod github.
I don't know if this actually helped anyone or if anyone had the same problem, but I'd love to have some feedback from you guys. Thanks. :good:
pettrel said:
oh man that sucks, for some reasons mine still doesn't want to work... I guess its because I trying it on a VM, but it should work the same. I will post my output from terminal tomorrow...
---------- Post added at 08:30 AM ---------- Previous post was at 08:06 AM ----------
Code:
device/samsung/smdk4412-common/camerawrapper/CameraWrapper.cpp: In function 'char* camera_fixup_setparams(int, const char*)':
device/samsung/smdk4412-common/camerawrapper/CameraWrapper.cpp:130:16: error: 'KEY_CITYID' is not a member of 'android::CameraParameters'
device/samsung/smdk4412-common/camerawrapper/CameraWrapper.cpp: In function 'int camera_device_open(const hw_module_t*, const char*, hw_device_t**)':
device/samsung/smdk4412-common/camerawrapper/CameraWrapper.cpp:514:134: warning:
suggest parentheses around assignment used as truth value [-Wparentheses]
make: *** [/home/petruv/UPP/out/target/product/t0lte/obj/SHARED_LIBRARIES/camera .exynos4_intermediates/CameraWrapper.o] Error 1
make: *** Waiting for unfinished jobs....
external/sqlite/dist/sqlite3.c: In function 'fts3SnippetFunc':
external/sqlite/dist/sqlite3.c:129881:11: warning: 'iS' may be used uninitialized in this function [-Wmaybe-uninitialized]
external/sqlite/dist/sqlite3.c:129873:13: note: 'iS' was declared here
make: *** wait: No child processes. Stop.
[email protected]:~/UPP$
That is what I get when I try to make the built. I followed this guide
I had to do this:
Code:
$ cd device/samsung/t0lte
$ cp t0lte.mk full_t0lte.mk
so I can get passed the error where it says its missing "full_t0lte.mk".
Also, I did:
Code:
$ brunch t0lte
instead of
Code:
$ brunch full_t0lte-userdebug
because it was saying it couldn't find this device and was trying to get them from CyanogenMod github.
I don't know if this actually helped anyone or if anyone had the same problem, but I'd love to have some feedback from you guys. Thanks. :good:
Click to expand...
Click to collapse
I will come back and look at your problem more later I am going to bed. I should have went earlier like I saiad I was. Cause now I have a device that will not go into recovery. I think it is soft bricked
I can not even bott to recovery via "adb reboot recovery". :crying:
T-Macgnolia said:
I will come back and look at your problem more later I am going to bed. I should have went earlier like I saiad I was. Cause now I have a device that will not go into recovery. I think it is soft bricked
I can not even bott to recovery via "adb reboot recovery". :crying:
Click to expand...
Click to collapse
As long as you can get in "Download Mode", you're good to go.
So... I went in different folders and edited some .mk files (commented out any line that have to do with camera), I don't remember which ones, but I got it to build... now I am transferring my files to my phone and will give it a try to see if it boots.
If Ubuntu is being ported to android phones, does that mean other linux distros will be able to be ported as well? Like Linux Mint for example. I think that would look super sexy on a phone.
pettrel said:
oh man that sucks, for some reasons mine still doesn't want to work... I guess its because I trying it on a VM, but it should work the same. I will post my output from terminal tomorrow...
---------- Post added at 08:30 AM ---------- Previous post was at 08:06 AM ----------
Code:
device/samsung/smdk4412-common/camerawrapper/CameraWrapper.cpp: In function 'char* camera_fixup_setparams(int, const char*)':
device/samsung/smdk4412-common/camerawrapper/CameraWrapper.cpp:130:16: error: 'KEY_CITYID' is not a member of 'android::CameraParameters'
device/samsung/smdk4412-common/camerawrapper/CameraWrapper.cpp: In function 'int camera_device_open(const hw_module_t*, const char*, hw_device_t**)':
device/samsung/smdk4412-common/camerawrapper/CameraWrapper.cpp:514:134: warning:
suggest parentheses around assignment used as truth value [-Wparentheses]
make: *** [/home/petruv/UPP/out/target/product/t0lte/obj/SHARED_LIBRARIES/camera .exynos4_intermediates/CameraWrapper.o] Error 1
make: *** Waiting for unfinished jobs....
external/sqlite/dist/sqlite3.c: In function 'fts3SnippetFunc':
external/sqlite/dist/sqlite3.c:129881:11: warning: 'iS' may be used uninitialized in this function [-Wmaybe-uninitialized]
external/sqlite/dist/sqlite3.c:129873:13: note: 'iS' was declared here
make: *** wait: No child processes. Stop.
[email protected]:~/UPP$
That is what I get when I try to make the built. I followed this guide
I had to do this:
Code:
$ cd device/samsung/t0lte
$ cp t0lte.mk full_t0lte.mk
so I can get passed the error where it says its missing "full_t0lte.mk".
Also, I did:
Code:
$ brunch t0lte
instead of
Code:
$ brunch full_t0lte-userdebug
because it was saying it couldn't find this device and was trying to get them from CyanogenMod github.
I don't know if this actually helped anyone or if anyone had the same problem, but I'd love to have some feedback from you guys. Thanks. :good:
Click to expand...
Click to collapse
It looks like you did not clone your device folder because that is where the t0lte.mk and the full_t0lte.mk is located in device/samsung/t0lte.
Go to device/samsung and delete the tolte folder you have if it is one there and open a terminal and do the following .
Code:
cd UPP/device/samsung
git clone git://github.com/T-Macgnolia/android_device_samsung_t0lte.git -b cm-10.1 t0lte
pettrel said:
As long as you can get in "Download Mode", you're good to go.
Click to expand...
Click to collapse
That is the problem it will not go to download mode either. I just ordered a JIG from MobileTechVideos.com. Hopefully when I get it in a couple of days I will be able to get to download mode and flash via Odin.
pettrel said:
So... I went in different folders and edited some .mk files (commented out any line that have to do with camera), I don't remember which ones, but I got it to build... now I am transferring my files to my phone and will give it a try to see if it boots.
Click to expand...
Click to collapse
Glad you got it to build man, did you get it to boot. Also as a good rulle of thumb always document what changes you make when trying to get a build to complete or any added mods you add to your work tree.
acideater said:
If Ubuntu is being ported to android phones, does that mean other linux distros will be able to be ported as well? Like Linux Mint for example. I think that would look super sexy on a phone.
Click to expand...
Click to collapse
Canonical Ltd made put together this mobile version of Ubuntu. From what they (Canonical Ltd) have said about it they have plans to do nothing but improve on this platform if it gains popularity. They mentioned such features as having a full desktop Ubuntu if you dock your device. But as far as other linux distros coming out with a mobile version i can not say yes or no. But I can say it will probably depend on how popular this first Ubuntu phone OS becomes.
cd to your Desktop
command time: (copy/paste em)
Code:
mkdir ~/bin
export PATH=~/bin:$PATH
curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
chmod a+x ~/bin/repo
then:
Code:
sudo gedit ~/.bashrc
put export PATH=~/bin:$PATH at the bottom, of it
to enable CCACHE, put this code at the bottom of your bash.rc
Code:
EXPORT USE_CCACHE=1
export CCACHE_DIR=/path/to/your/ccache/folder (mine is /home/mbq/Desktop/ccache
export CCACHE_LOGFILE=/path/to/your/ccache/ccache.log
save it
then:
Code:
mkdir ~/XYAOSP
cd ~/XYAOSP
repo init -u [url]https://github.com/XYAOSP/platform_manifest[/url] -b jb4.2
repo sync -j16 (or -j8, or -j32.. whichever you want)
then:
when youre synced up..
if you want to watch CCACHE to make sure it's working, cd to:
Code:
/path/to/your/XYAOSP/prebuilts/misc/linux-x86/cache
then:
Code:
ccache -s
to change the size of your CCACHE, cd to:
Code:
/path/to/your/XYAOSP/prebuilts/misc/linux-x86
then:
Code:
ccache -M 20
(20=20GB, you can set it all the way to 100)
make sure ccache is getting hits. (The first build will take way longer than usual, so be patient).
to call linaro out correctly, open your xylon folder, go to build, and edit envsetup.sh (if you see a lock on the file(s), enter this:
Code:
sudo chmod -R 777 /path/to/your/XYAOSP/build
then, find:
Code:
# The gcc toolchain does not exists for windows/cygwin. In this case, do not reference it.
export ANDROID_EABI_TOOLCHAIN=
local ARCH=$(get_build_var TARGET_ARCH)
case $ARCH in
x86) toolchaindir=x86/i686-linux-android-4.6/bin
;;
arm) toolchaindir=arm/arm-linux-androideabi-$targetgccversion/bin
;;
mips) toolchaindir=mips/mipsel-linux-android-4.6/bin
;;
*)
echo "Can't find toolchain for unknown architecture: $ARCH"
toolchaindir=xxxxxxxxx
;;
and change:
Code:
arm) toolchaindir=arm/arm-linux-androideabi-$targetgccversion/bin
to:
Code:
arm) toolchaindir=linaro/bin
and:
Code:
unset ARM_EABI_TOOLCHAIN ARM_EABI_TOOLCHAIN_PATH
case $ARCH in
arm)
toolchaindir=arm/arm-eabi-$targetgccversion/bin
if [ -d "$gccprebuiltdir/$toolchaindir" ]; then
export ARM_EABI_TOOLCHAIN="$gccprebuiltdir/$toolchaindir"
ARM_EABI_TOOLCHAIN_PATH=":$gccprebuiltdir/$toolchaindir"
fi
;;
mips) toolchaindir=mips/mips-eabi-4.4.3/bin
;;
*)
# No need to set ARM_EABI_TOOLCHAIN for other ARCHs
;;
change:
Code:
case $ARCH in
arm)
toolchaindir=arm/arm-eabi-$targetgccversion/bin
to:
Code:
case $ARCH in
arm)
toolchaindir=linaro/bin
(Make sure linaro is in
Code:
/path/to/your/XYAOSP/prebuilts/gcc/linux-x86/linaro
)
to enable -O3 optimizations, go to:
Code:
/path/to/your/XYAOSP/build/core/combo
open: select.mk
edit:
Code:
ifneq ($(TARGET_USE_02),true)
$(combo_target)GLOBAL_CFLAGS := -fno-exceptions -Wno-multichar
$(combo_target)RELEASE_CFLAGS := -O2 -g -fno-strict-aliasing
else
$(combo_target)GLOBAL_CFLAGS := -O3 -g -Wstrict-aliasing=2
ifneq ($(combo_target),HOST_)
(combo_target)RELEASE_CFLAGS += -Werror=strict-aliasing
endif
endif
$(combo_target)GLOBAL_LDFLAGS := -Wl,-O3
$(combo_target)GLOBAL_ARFLAGS := crsP
change anything -O2 to -O3
save it
then: go to the build/core/combo
then: TARGET_linux-arm.mk
change:
Code:
ifeq ($(TARGET_USE_O3),true)
TARGET_arm_CFLAGS := -Os \
-fomit-frame-pointer \
-fstrict-aliasing \
-fno-tree-vectorize
else
TARGET_arm_CFLAGS := -O3 \
-fomit-frame-pointer \
-fstrict-aliasing \
-funswitch-loops
endif
to:
Code:
ifeq ($(TARGET_USE_O2),true)
TARGET_arm_CFLAGS := -Os \
-fomit-frame-pointer \
-fstrict-aliasing \
-fno-tree-vectorize
else
TARGET_arm_CFLAGS := -O3 \
-fomit-frame-pointer \
-fstrict-aliasing \
-funswitch-loops
endif
and:
Code:
ifeq ($(ARCH_ARM_HAVE_THUMB_SUPPORT),true)
ifeq ($(TARGET_USE_O2),true)
TARGET_thumb_CFLAGS := -mthumb \
-O2 \
-fomit-frame-pointer \
-fno-strict-aliasing \
-fno-tree-vectorize
else
TARGET_thumb_CFLAGS := -mthumb \
-O3 \
-fomit-frame-pointer \
-fno-strict-aliasing \
-fno-tree-vectorize
endif
else
TARGET_thumb_CFLAGS := $(TARGET_arm_CFLAGS)
endif
to:
Code:
ifeq ($(ARCH_ARM_HAVE_THUMB_SUPPORT),true)
ifeq ($(TARGET_USE_O3),true)
TARGET_thumb_CFLAGS := -mthumb \
-O3 \
-fomit-frame-pointer \
-fno-strict-aliasing \
-fno-tree-vectorize
else
TARGET_thumb_CFLAGS := -mthumb \
-O3 \
-fomit-frame-pointer \
-fno-strict-aliasing \
-fno-tree-vectorize
endif
else
TARGET_thumb_CFLAGS := $(TARGET_arm_CFLAGS)
endif
^^ Make any of these changes prior to building
to build with GCC 4.9, go to build/core/config.mk and find TARGET_GCC_VERSION := 4.7, change it to 4.9
to get linaro, download this: http://releases.linaro.org/13.04/co...13.04-2-2013-04-13_12-08-43-linux-x86.tar.bz2
then change the folders name to 'linaro'
move it to prebuilts/gcc/linux-x86
then, to build..
Code:
. build/envsetup.sh
croot
brunch device -j(2, 4, 8, 16, or 32, your choice)
*Note: Because CCACHE is enabled, it will take a while for your first build to complete. ~2-5 hours
Hope this helps!
Reserved! Just in case
repo sync -j16 (or -j8, or -j32.. whichever you want)
What's the difference between them. Trying to build for toro wondering which one I should use, thanks
RoyJ said:
repo sync -j16 (or -j8, or -j32.. whichever you want)
What's the difference between them. Trying to build for toro wondering which one I should use, thanks
Click to expand...
Click to collapse
How many threads of each core is used
Sent from my Galaxy Nexus using xda premium
if you have a 4x cpu you can go for -j8\-k16 and so on.i always used -j16 in the past,now it's big time i don't anything.
Great 3ad kyler,you explain all very well,especially the toolchain part rather that other guides out there.I stopped build for myself some months ago,but definetly a good howto for who have time and effort to try.
^__^
If you change TARGET_GCC_VERSION to 4.9... You'll need to wget Linaro 4.9.. No?
Sent from my Nexus
bk201doesntexist said:
If you change TARGET_GCC_VERSION to 4.9... You'll need to wget Linaro 4.9.. No?
Sent from my Nexus
Click to expand...
Click to collapse
Not to my knowledge. Xylon uses Sabermods toolchain
Great guide! Thanks!!
MisterSprinkles said:
Great guide! Thanks!!
Click to expand...
Click to collapse
Thank you!
Sent from my Galaxy Nexus using xda premium
should I dl the CCATCH separately? and what about ccatch.log? how to address that?
frost866 said:
should I dl the CCATCH separately? and what about ccatch.log? how to address that?
Click to expand...
Click to collapse
Yeah, and just call it in your bashrc
Sent from my Galaxy Nexus using xda premium
Awesome guide!!!! It helped me a lot!
Thanks!!!
pguizeline said:
Awesome guide!!!! It helped me a lot!
Thanks!!!
Click to expand...
Click to collapse
:good:
Sent from my Galaxy Nexus using xda premium
quick question why dont we use full 4.9 like what Daxx done in his maguro UKG build ?
-Jesco- said:
quick question why dont we use full 4.9 like what Daxx done in his maguro UKG build ?
Click to expand...
Click to collapse
I do
Sent from my Galaxy Nexus using xda premium
Nice guide thanks!
Can you pls. tell me how much space will the "sources" occupy during/after the first sync-up? Although am on unlimited broadband, would like to know this. I read in one of the threads (about CM 10.1 sources sync-up) that it is about 40GB. Is this right?
pmbabu said:
Nice guide thanks!
Can you pls. tell me how much space will the "sources" occupy during/after the first sync-up? Although am on unlimited broadband, would like to know this. I read in one of the threads (about CM 10.1 sources sync-up) that it is about 40GB. Is this right?
Click to expand...
Click to collapse
20-40GB
Sent from my Galaxy Nexus using xda premium
I just tried to self-compile a xyUltimatum build and I used the SaberMod GCC 4.9 toolchain since there's not a 4.9 of Linaro out yet and got an error related to the compiler itself.
Code:
external/aac/libAACenc/src/aacenc_tns.cpp: In function 'INT FDKaacEnc_TnsEncode(TNS_INFO*, TNS_DATA*, INT, const TNS_CONFIG*, INT, FIXP_DBL*, INT, INT)':
external/aac/libAACenc/src/aacenc_tns.cpp:1004:5: error: definition in block 48 follows the use
INT FDKaacEnc_TnsEncode(
^
for SSA_NAME: value_155 in statement:
# DEBUG D#405 => MAX_EXPR <value_155, _111>
external/aac/libAACenc/src/aacenc_tns.cpp:1004:5: internal compiler error: verify_ssa failed
0xc2358c verify_ssa(bool)
../.././../gcc/gcc-SaberMod/gcc/tree-ssa.c:1046
0x9f66e2 execute_function_todo
../.././../gcc/gcc-SaberMod/gcc/passes.c:1970
0x9f704d execute_todo
../.././../gcc/gcc-SaberMod/gcc/passes.c:2002
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.
make: *** [/home/kemikalelite/android/out/target/product/maguro/obj/STATIC_LIBRARIES/libFraunhoferAAC_intermediates/libAACenc/src/aacenc_tns.o] Error 1
Since the ROM and toolchain are from two different sources I'm not sure if it was caused by something with the ROM's source or if its just caused from a bug in the toolchain and whether or not it should be reported to the Saber dev.
KemikalElite said:
I just tried to self-compile a xyUltimatum build and I used the SaberMod GCC 4.9 toolchain since there's not a 4.9 of Linaro out yet and got an error related to the compiler itself.
Code:
external/aac/libAACenc/src/aacenc_tns.cpp: In function 'INT FDKaacEnc_TnsEncode(TNS_INFO*, TNS_DATA*, INT, const TNS_CONFIG*, INT, FIXP_DBL*, INT, INT)':
external/aac/libAACenc/src/aacenc_tns.cpp:1004:5: error: definition in block 48 follows the use
INT FDKaacEnc_TnsEncode(
^
for SSA_NAME: value_155 in statement:
# DEBUG D#405 => MAX_EXPR <value_155, _111>
external/aac/libAACenc/src/aacenc_tns.cpp:1004:5: internal compiler error: verify_ssa failed
0xc2358c verify_ssa(bool)
../.././../gcc/gcc-SaberMod/gcc/tree-ssa.c:1046
0x9f66e2 execute_function_todo
../.././../gcc/gcc-SaberMod/gcc/passes.c:1970
0x9f704d execute_todo
../.././../gcc/gcc-SaberMod/gcc/passes.c:2002
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.
make: *** [/home/kemikalelite/android/out/target/product/maguro/obj/STATIC_LIBRARIES/libFraunhoferAAC_intermediates/libAACenc/src/aacenc_tns.o] Error 1
Since the ROM and toolchain are from two different sources I'm not sure if it was caused by something with the ROM's source or if its just caused from a bug in the toolchain and whether or not it should be reported to the Saber dev.
Click to expand...
Click to collapse
I'd submit a bug report
Sent from my Galaxy Nexus using xda premium
Wow Tapatalk must really be messing up. Every time I post in the other thread the reply automatically redirects here. Enough Fail Posting for one day.
Error Post Please Delete.
Github repo: https://github.com/kernel-killer/android_kernel_huawei_h30u10
All changes I made since last commit are in my private repo.
Install packages (Not sure if it's right):
Code:
sudo apt-get install build-essential
Note: Please run ./mk ckeck-env to verify your build enviroment (Newer GNU MAKE will fail but the code compiles the same with new or older version)
Build:
Code:
./mk bm_new k
Testing your new kernel:
Download both attachments (KernelSwapper and BootimgRestore).
Append headers from stock kernel to zImage (which can be found at ./out/target/product/huawei82_cwet_kk/obj/KERNEL_OBJ/arch/arm/boot/zImage)
In KernelSwapper update 'kernel' with your own generated zImage rename it to 'kernel' and replace it inside zip.
In BootimgRestore replace 'boot.img' with your current ROM's boot.img in case that something goes wrong (e.g.: Phone not booting).
Copy the two new zips into phone's memory (or SD card) and flash KernelSwapper.
===== Reserved #1 =====
Thanks for the awesome work KK. I am on CM 13 3.4.67 kernel. Can i use this or do i have to be in stock rom for testing the kernal?
Sent from my Honor 3C using Tapatalk
---------- Post added at 06:12 AM ---------- Previous post was at 06:02 AM ----------
Update : Flashed the kernel, phone booted but felt laggish while using. I am still testing, will let you know what happens
Sent from my Honor 3C using Tapatalk
karkeankit said:
Thanks for the awesome work KK. I am on CM 13 3.4.67 kernel. Can i use this or do i have to be in stock rom for testing the kernal?
Sent from my Honor 3C using Tapatalk
---------- Post added at 06:12 AM ---------- Previous post was at 06:02 AM ----------
Update : Flashed the kernel, phone booted but felt laggish while using. I am still testing, will let you know what happens
Sent from my Honor 3C using Tapatalk
Click to expand...
Click to collapse
Yes, I'm sure that the kernel has multiple bugs. The phone may feel laggish because there is enabled low-level kernel debugging over UART.
Thank you for testing...
kernel.killer said:
Yes, I'm sure that the kernel has multiple bugs. The phone may feel laggish because there is enabled low-level kernel debugging over UART.
Thank you for testing...
Click to expand...
Click to collapse
You are welcome, wishint you good luck for further development
Sent from my Honor 3C using Tapatalk
Hi, tnx for The kernel
if i Update my kernel VPN bug in CM12.1 will fix?
hamadk said:
Hi, tnx for The kernel
if i Update my kernel VPN bug in CM12.1 will fix?
Click to expand...
Click to collapse
Nope, it's ROM bug not a kernel bug plus I have released only development preview version which has enabled many debugging options and it may be quite buggy.
Thanks, but can this process led to a suitable kernel for CM13?
Does this kernel fixes the video playback problem and the recording problem?(Can't play or capture 720p videos, screen recorder works fine, just the camera.)
Sent from my Huawei Honor 3C using XDA Labs
Lumpbloom7 said:
Does this kernel fixes the video playback problem and the recording problem?(Can't play or capture 720p videos, screen recorder works fine, just the camera.)
Sent from my Huawei Honor 3C using XDA Labs
Click to expand...
Click to collapse
http://forum.xda-developers.com/showpost.php?p=67848925&postcount=8
mhxygh said:
Thanks, but can it this process led to a suitable kernel for CM13?
Click to expand...
Click to collapse
Aim of this project is to make stock kernel sources stable for KitKat ROMs (It is originally for KK) but somebody else may patch them for CM 13. I am not working on this nor I'll do.
Will you be adding extra CPU governors and IO schedulers along with kernel level wakeups for double tap waking?
I was wondering who else is developing kernel 3.10.XX for this device ?
Ms_Julia said:
I was wondering who else is developing kernel 3.10.XX for this device ?
Click to expand...
Click to collapse
Actually, nobody is working on 3.10.X kernel. And I'm rather focusing on LineageOS for now.
What is the defconf for our device in kernel source
imranpopz said:
What is the defconf for our device in kernel source
Click to expand...
Click to collapse
This should include most configs
Code:
/* Mediatek common */
./mediatek/config/common/autoconfig/kconfig/AEE
./mediatek/config/common/autoconfig/kconfig/USER
./mediatek/config/common/ProjectConfig.mk
/* MT6582 common */
./mediatek/config/mt6582/autoconfig/kconfig/platform
./mediatek/config/mt6582/ProjectConfig.mk
/* h30u10 device specific */
./mediatek/config/huawei82_cwet_kk/autoconfig/kconfig/project
./mediatek/config/huawei82_cwet_kk/ProjectConfig.mk
kernel.killer said:
This should include most configs
Code:
/* Mediatek common */
./mediatek/config/common/autoconfig/kconfig/AEE
./mediatek/config/common/autoconfig/kconfig/USER
./mediatek/config/common/ProjectConfig.mk
/* MT6582 common */
./mediatek/config/mt6582/autoconfig/kconfig/platform
./mediatek/config/mt6582/ProjectConfig.mk
/* h30u10 device specific */
./mediatek/config/huawei82_cwet_kk/autoconfig/kconfig/project
./mediatek/config/huawei82_cwet_kk/ProjectConfig.mk
Click to expand...
Click to collapse
Replace Device Name with the configuration file found at:
Source/arch/arm/configs
It's written in this way something_DeviceCodename_user_defconfig
I need for the above step.. ☝☝☝
imranpopz said:
Replace Device Name with the configuration file found at:
Source/arch/arm/configs
It's written in this way something_DeviceCodename_user_defconfig
I need for the above step.. ☝☝☝
Click to expand...
Click to collapse
Well... This is Mediatek, DO NOT expect the sources to look nice. The configs are scattered through ./mediatek subdirectories, *.mk files are parsed and configs are assembled during build. Unfortunatelly, even if you manually assemble .config you will NOT be able to build the kernel. It is full of dirty hacks (Mediatek) and just typing "make" won't work, build will break.
Build:
Code:
$ git clone https://github.com/kernel-killer/android_kernel_huawei_h30u10.git
$ cd android_kernel_huawei_h30u10
$ export ARCH=arm && export ARCH_MTK_PLATFORM=mt6582 && export TARGET_PRODUCT=huawei82_cwet_kk
$ export CROSS_COMPILE=/path-to-your-toolchain/.../bin/arm-linux-androideabi-
$ ./mk n k
Code:
$ ./mk -h
Usage: (makeMtk|mk) [options] project actions [modules]
Options:
-t, -tee : Print log information on the standard-out.
-o, -opt=bypass_argument_to_make
: Pass extra arguments to make.
-h, -help : Print this message and exit.
Projects:
one of available projects.
Actions:
listp, listproject
: List all available projects.
check-env : Check if build environment is ready.
check-dep : Check feature dependency.
n, new : Clean and perform a full build.
c, clean : Clean the immediate files(such as, objects, libraries etc.).
r, remake : Rebuild(target will be updated if any dependency updats).
mrproper : Remove all generated files + config + various backup files in Kbuild process.
bm_new : "new" + GNU make's "-k"(keep going when encounter error) feature.
bm_remake : "remake" + GNU make's "-k"(keep going when encounter error) feature.
mm : Build module through Android native command "mm"
mma : Build module through Android native command "mma"
emigen : Generate EMI setting source code.
nandgen : Generate supported NAND flash device list.
codegen : Generate trace DB(for META/Cather etc. tools used).
drvgen : Generate driver customization source.
custgen : Generate customization source.
javaoptgen : Generate the global java options.
ptgen : Generate partition setting header & scatter file.
bindergen : Generate binder related information
sign-image : Sign all the image generated.
encrypt-image : Encrypt all the image generated.
update-api : Android default build action
(be executed if system setting or anything removed from API).
check-modem : Check modem image consistency.
upadte-modem : Update modem image located in system.img.
modem-info : Show modem version
gen-relkey : Generate releasekey for application signing.
check-appres : Check unused application resource.
sdk : Build sdk package.
win_sdk : Build sdk package with a few Windows tools.
banyan_addon : Build MTK sdk addon.
banyan_addon_x86 :Build MTK sdk x86 addon.
cts : Build cts package.
bootimage : Build boot image(boot.img).
cacheimage : Build cache image(cache.img).
systemimage : Build system image(system.img).
snod : Build system image without dependency.
(that is, ONLY pack the system image, NOT checking its dependencies.)
recoveryimage : Build recovery image(recovery.img).
secroimage : Build secro image(secro.img).
factoryimage : Build factory image(factory.img).
userdataimage : Build userdata image(userdata.img).
userdataimage-nodeps
: Build userdata image without dependency.
(that is, ONLY pack the userdata image, NOT checking its dependencies.)
dump-products : Dump products related configuration(PRODUCT_PACKAGE,PRODUCT_NAME ect.)
target-files-package
: Build the target files package.
(A zip of the directories that map to the target filesystem.
This zip can be used to create an OTA package or filesystem image
as a post-build step.)
updatepackage : Build the update package.
dist : Build distribution package.
Modules:
pl, preloader : Specify to build preloader.
lk : Specify to build little kernel.
md32 : Specify to build DSP md32.
tz, trustzone : Specify to build trusted execution environment.
k, kernel : Specify to build kernel.
dr, android : Specify to build android.
NULL : Specify to build all components/modules in default.
k <module path>
: Specify to build kernel component/module with the source path.
dr <module name>
: Specify to build android component/module with module name.
Other tools:
prebuilts/misc/linux-x86/ccache/ccache -M 10G
: Set CCACHE pool size to 10GB
Example:
./mk -t e1k emigen
: Generate EMI setting source code.
./mk -o=TARGET_BUILD_VARIANT=user e1k n
: Start a user mode full build.
./mk listp : List all available projects.
./mk e1k bootimage
: Build bootimage for e1k project.
./mk e1k bm_new k
: Build kernel for e1k project.
./makeMtk e1k c,bm_remake pl k
: Clean & Build preloader and kernel for e1k project.
./makeMtk e1k n k kernel/xxx/xxx
: Build(full build) kernel component/module
under the path "kernel/xxx/xxx" for e1k project.
./makeMtk e1k r dr Gallery
: Rebuild android module named Gallery for e1k project.
./makeMtk e1k mm packages/apps/Settings
: Change Directory to packages/apps/Settings and execute "mm"
./makeMtk e1k mma packages/apps/Settings
: Change Directory to packages/apps/Settings and execute "mma"
Edit:
I fixed the sources, so menuconfig can be used.
Apply patch:
Code:
$ git am 0001-Fix-build-using-make-command.patch
Build:
Code:
$ cd kernel && export ARCH=arm && export ARCH_MTK_PLATFORM=mt6582 && export TARGET_PRODUCT=huawei82_cwet_kk
$ export CROSS_COMPILE=/path-to-your-toolchain/.../bin/arm-linux-androideabi-
$ make -C $(pwd) O=output h30u10_defconfig menuconfig
$ make -C $(pwd) O=output
Append MTK headers:
Code:
$ ../mediatek/build/tools/mkimage output/arch/arm/boot/zImage KERNEL > output/zImage
*Note: I recommend using AOSP arm-linux-androideabi-4.9 toolchain.
Getting cp: cannot stat 'out/target/product/huawei82_cwet_kk_kernel.log
Make [1]: [kernel ] error 1
Make: *** [remake] error 2
Hi to all!
I'm building Lineage OS for my device. I added some third party app to my source code: I put apk in a folder in the directory /packages/apps, I added all the apk's name in /vendor/cm/config/common.mk and also within /build/target/core.mk, but the building process doesn't see them and it doesn't include them in the ROM package.
I followed many guides, but all of them failed on this, so I think i'm forgetting something.
There is a method to add third party app to the source code?
Gabrius99 said:
Hi to all!
I'm building Lineage OS for my device. I added some third party app to my source code: I put apk in a folder in the directory /packages/apps, I added all the apk's name in /vendor/cm/config/common.mk and also within /build/target/core.mk, but the building process doesn't see them and it doesn't include them in the ROM package. I followed many guides, but all of them failed on this, so I think i'm forgetting something. There is a method to add third party app to the source code?
Click to expand...
Click to collapse
Try asking within the following thread since it involves how to build a custom ROM from Source Code to End.
http://forum.xda-developers.com/showthread.php?t=2814763
They should be able to either help you out or guide you in the right direction as to where to find the answer.
"Live Long and Prosper..."
~Ambassador S'chn T'gai Spock
Sent via Communicator [D2VZW] from the Bridge of the U.S.S. Enterprise
Ibuprophen said:
Try asking within the following thread since it involves how to build a custom ROM from Source Code to End.
http://forum.xda-developers.com/showthread.php?t=2814763
They should be able to either help you out or guide you in the right direction as to where to find the answer.
"Live Long and Prosper..."
~Ambassador S'chn T'gai Spock
Sent via Communicator [D2VZW] from the Bridge of the U.S.S. Enterprise
Click to expand...
Click to collapse
Thanks a lot
I hope they'll answer me
Gabrius99 said:
Hi to all!
I'm building Lineage OS for my device. I added some third party app to my source code: I put apk in a folder in the directory /packages/apps, I added all the apk's name in /vendor/cm/config/common.mk and also within /build/target/core.mk, but the building process doesn't see them and it doesn't include them in the ROM package.
I followed many guides, but all of them failed on this, so I think i'm forgetting something.
There is a method to add third party app to the source code?
Click to expand...
Click to collapse
Hi. I don't know if you achieved your goal, but I did the procedure bellow to add LibreOfficeViewer to my build and It works for me. Only change the path of device.mk to your device:
LibreofficeViewer
* Create the directory ~/android/system/packages/apps/LibreOfficeViewer
* Edit ~/android/system/packages/apps/LibreOfficeViewer/Android.mk and add:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE := LibreOfficeViewer
LOCAL_CERTIFICATE := media
LOCAL_SRC_FILES := LibreOfficeViewer.apk
LOCAL_MODULE_CLASS := APPS
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
include $(BUILD_PREBUILT)
* Edit ~/android/system/device/motorola/harpia/device.mk and add:
# LibreOfficeViewer
PRODUCT_PACKAGES += \
LibreOfficeViewer
* Copy LibreOfficeViewer.apk to ~/android/system/packages/apps/LibreOfficeViewer
That's it.
cvbrt said:
Hi. I don't know if you achieved your goal, but I did the procedure bellow to add LibreOfficeViewer to my build and It works for me. Only change the path of device.mk to your device:
LibreofficeViewer
* Create the directory ~/android/system/packages/apps/LibreOfficeViewer
* Edit ~/android/system/packages/apps/LibreOfficeViewer/Android.mk and add:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE := LibreOfficeViewer
LOCAL_CERTIFICATE := media
LOCAL_SRC_FILES := LibreOfficeViewer.apk
LOCAL_MODULE_CLASS := APPS
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
include $(BUILD_PREBUILT)
* Edit ~/android/system/device/motorola/harpia/device.mk and add:
# LibreOfficeViewer
PRODUCT_PACKAGES += \
LibreOfficeViewer
* Copy LibreOfficeViewer.apk to ~/android/system/packages/apps/LibreOfficeViewer
That's it.
Click to expand...
Click to collapse
I received some answers in the other thread, but I didn't tried those methods yet. Thanks anyway for the help
cvbrt said:
Hi. I don't know if you achieved your goal, but I did the procedure bellow to add LibreOfficeViewer to my build and It works for me. Only change the path of device.mk to your device:
LibreofficeViewer
* Create the directory ~/android/system/packages/apps/LibreOfficeViewer
* Edit ~/android/system/packages/apps/LibreOfficeViewer/Android.mk and add:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE := LibreOfficeViewer
LOCAL_CERTIFICATE := media
LOCAL_SRC_FILES := LibreOfficeViewer.apk
LOCAL_MODULE_CLASS := APPS
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
include $(BUILD_PREBUILT)
* Edit ~/android/system/device/motorola/harpia/device.mk and add:
# LibreOfficeViewer
PRODUCT_PACKAGES += \
LibreOfficeViewer
* Copy LibreOfficeViewer.apk to ~/android/system/packages/apps/LibreOfficeViewer
That's it.
Click to expand...
Click to collapse
Great! Still works great for lineage18.1. But u no, ~/android/system is called ~/android/lineage here.
y0va said:
Great! Still works great for lineage18.1. But u no, ~/android/system is called ~/android/lineage here.
Click to expand...
Click to collapse
I hate to revive such a long dead thread but I've been struggling with this and hoping for some help so please forgive me. Do you happen to know if the process is any different for LineageOS 20? I'm getting an error that it's failed due to a non-existent module in product_packages.
Hi all!
Starting a new thread to make things more clear to all. We need help. Please, review this thread from page 4:
https://forum.xda-developers.com/mi...s-kernel-source-code-available-t3835130/page4
I'm working in a port of LineageOS 16 to mi a2 lite (daisy).
Thanks to @LazyT @hossman and @davze for their help.
UPDATE:
At the moment we have a device tree and blobs. Uploaded to github.
Not flashed and tested by me yet.
Device:
https://github.com/robotusr/device_xiaomi_daisy (100% uploaded)
&
https://github.com/robotusr/device_x...msm8953-common (100% uploaded)
Proprietary files:
https://github.com/robotusr/propriet...r_xiaomi_daisy (100% uploaded)
&
https://github.com/robotusr/propriet...msm8953-common (100% uploaded)
File local_manifests/roomservice.xml
Code:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="robotusr/device_xiaomi_daisy" path="device/xiaomi/daisy" remote="github" />
<project name="robotusr/device_xiaomi_msm8953-common" path="device/xiaomi/msm8953-common" remote="github" />
<project name="robotusr/proprietary_vendor_xiaomi" path="vendor/xiaomi/daisy" remote="github" />
<project name="robotusr/proprietary_vendor_xiaomi_msm8953-common" path="vendor/xiaomi/msm8953-common" remote="github" />
</manifest>
Steps to build:
-Init LineageOS repo with repo init -u https://github.com/LineageOS/android.git -b lineage-16.0
-repo sync
-Create roomservice file at local_manifests/roomservice.xml
-repo sync (this downloads all daisy device and proprietary files (also for msmscommon))
-Run . build/envsetup.sh
-Because we are bulding an unsupported device with Android 8.1 sources (at the moment), and there are some errors about LOCAL_SDK_VERSION (seems to be mandatory in Android 9) and some dependencies.
Edit file build/make/core/sdk_check.mk (make a backup first to use the original file in future builds).
Modify line whitelisted_modules :=
With this:
Code:
whitelisted_modules := framework-res__auto_generated_rro SystemUI__auto_generated_rro Bluetooth__auto_generated_rro Settings__auto_generated_rro
-export ALLOW_MISSING_DEPENDENCIES=TRUE
-lunch lineage_daisy-eng
-brunch daisy
Please, tell me if it builds ok for you.
Best regards,
Daniel
This is very promising.
Thank you all for the hard work <3
Thanks but need good twrp for that...
Hey there,
if you need repos created on lineageos GitHub or other help just ask them via IRC. Luk made changes in the exchange repo for me for 15.1, I recommend him
Hy, can we use pixelrom as source ?
@robotusr
No sorry, I'm not working on it - only tried to help with your questions.
monojp said:
Hey there,
if you need repos created on lineageos GitHub or other help just ask them via IRC. Luk made changes in the exchange repo for me for 15.1, I recommend him
Click to expand...
Click to collapse
Great! I'll try to contact Luk. Thanks!
LazyT said:
@robotusr
No sorry, I'm not working on it - only tried to help with your questions.
Click to expand...
Click to collapse
Well, you helped me a lot!
Mounting vendor.img to create proprietary-files.txt is the only solution I've found. generate-blob-lists.sh script doesn't works.
Also I've change make files from cm to lineage (updated post #1)
Vendorimg contents:
Code:
drwxr-xr-x. 11 0 2000 4096 dic 31 2008 app
drwxr-xr-x. 4 0 2000 8192 dic 31 2008 bin
-rw-------. 1 0 0 3382 dic 31 2008 build.prop
-rw-r--r--. 1 0 0 1886 dic 31 2008 compatibility_matrix.xml
-rw-------. 1 0 0 614 dic 31 2008 default.prop
drwxr-xr-x. 19 0 2000 4096 dic 31 2008 etc
drwxr-xr-x. 3 0 2000 4096 dic 31 2008 firmware
drwxr-xr-x. 2 0 2000 4096 dic 31 2008 framework
drwxr-xr-x. 11 0 2000 114688 dic 31 2008 lib
drwxr-xr-x. 7 0 2000 12288 dic 31 2008 lib64
drwx------. 2 0 0 16384 dic 31 2008 lost+found
-rw-r--r--. 1 0 0 22941 dic 31 2008 manifest.xml
drwxr-xr-x. 2 0 2000 4096 dic 31 2008 media
drwxr-xr-x. 4 0 2000 4096 dic 31 2008 overlay
drwxr-xr-x. 11 0 2000 4096 dic 31 2008 package
drwxr-xr-x. 3 0 2000 4096 dic 31 2008 radio
drwxr-xr-x. 5 0 2000 4096 dic 31 2008 rfs
drwxr-xr-x. 2 0 2000 4096 dic 31 2008 speccfg
-rw-r--r--. 1 0 0 15446 dic 31 2008 ueventd.rc
This is the audio acdb section I've put in propietary-files.txt at the moment:
Code:
# Audio ACDB
vendor/etc/acdbdata/QRD/QRD_Bluetooth_cal.acdb
vendor/etc/acdbdata/QRD/QRD_General_cal.acdb
vendor/etc/acdbdata/QRD/QRD_Global_cal.acdb
vendor/etc/acdbdata/QRD/QRD_Handset_cal.acdb
vendor/etc/acdbdata/QRD/QRD_Hdmi_cal.acdb
vendor/etc/acdbdata/QRD/QRD_Headset_cal.acdb
vendor/etc/acdbdata/QRD/QRD_Speaker_cal.acdb
vendor/etc/acdbdata/adsp_avs_config.acdb
vendor/etc/acdbdata/QRD/QRD_workspaceFile.qwsp
Info from etc/acdbdata (oem rom):
Code:
etc/acdbdata/:
adsp_avs_config.acdb
MTP
QRD
etc/acdbdata/MTP:
msm8953-tasha-snd-card
MTP_Bluetooth_cal.acdb
MTP_General_cal.acdb
MTP_Global_cal.acdb
MTP_Handset_cal.acdb
MTP_Hdmi_cal.acdb
MTP_Headset_cal.acdb
MTP_Speaker_cal.acdb
MTP_workspaceFile.qwsp
etc/acdbdata/MTP/msm8953-tasha-snd-card:
MTP_WCD9335_Bluetooth_cal.acdb
MTP_WCD9335_General_cal.acdb
MTP_WCD9335_Global_cal.acdb
MTP_WCD9335_Handset_cal.acdb
MTP_WCD9335_Hdmi_cal.acdb
MTP_WCD9335_Headset_cal.acdb
MTP_WCD9335_Speaker_cal.acdb
MTP_WCD9335_workspaceFile.qwsp
etc/acdbdata/QRD:
QRD_Bluetooth_cal.acdb
QRD_General_cal.acdb
QRD_Global_cal.acdb
QRD_Handset_cal.acdb
QRD_Hdmi_cal.acdb
QRD_Headset_cal.acdb
QRD_Speaker_cal.acdb
QRD_workspaceFile.qwsp
I'm creating propietary-files.txt by hand. Please, be patient...
Regards,
Daniel.
greet ,good luck guys
alcopsy said:
Thanks but need good twrp for that...
Click to expand...
Click to collapse
It's not necessary to flash system.img (at the moment) using fastboot.
Obviously, we need a custom recovery to make rom backups and to flash other partitions.
I'm not a developer. Just learning to port a rom to my device.
Regards,
Daniel
robotusr said:
It's not necessary to flash system.img (at the moment) using fastboot.
Obviously, we need a custom recovery to make rom backups and to flash other partitions.
I'm not a developer. Just learning to port a rom to my device.
Regards,
Daniel
Click to expand...
Click to collapse
We have to wait working TWRP ! TWRP by TWRPbuilder is not working, perhaps they should fix it.or we have to wait !that A/B partition make the devellopement not easy !
foudroid said:
We have to wait working TWRP ! TWRP by TWRPbuilder is not working, perhaps they should fix it.or we have to wait !that A/B partition make the devellopement not easy !
Click to expand...
Click to collapse
I agree with you, but building a new device tree has nothing to do with that (partially).
Building a new device tree is useful to porting roms, not only for a recovery. I'm focused on getting an optimised system.img for our device.
This is the hard work.
Kernel's sources for daisy are out and these files are useful to build a custom recovery.
But I repeat, I'm not an expert and, of course, not a developer.
Regards,
Some progress.
I don't need to use extract-files.sh because I have all vendor files (extracted from vendor.img and system.img).
Just tested to make clean && make clobber
breakfast daisy
and always the same. roomservice.xml pointing to my new device repo in git doesn't works. Also tested with local_manifest.xml (I think it's deprecated).
Always build/make/core/product_config.mk:234: error: Can not locate config makefile for product "lineage_daisy".
and
Repository for daisy not found in the LineageOS Github repository list. If this is in error, you may need to manually add it to your local_manifests/roomservice.xml.
The way to get breakfast working is to upload all of my files to LineageOS git as device_xxxxxxxxxx
I'm thinking that another repository like themuppets in the past, doesn't works for Lineage. But I don't know why.
I've asked for help in LineageOS irc and an answer was:
xD
This doesn't helps
robotusr said:
Some progress.
I don't need to use extract-files.sh because I have all vendor files (extracted from vendor.img and system.img).
Just tested to make clean && make clobber
breakfast daisy
and always the same. roomservice.xml pointing to my new device repo in git doesn't works. Also tested with local_manifest.xml (I think it's deprecated).
Always build/make/core/product_config.mk:234: error: Can not locate config makefile for product "lineage_daisy".
and
Repository for daisy not found in the LineageOS Github repository list. If this is in error, you may need to manually add it to your local_manifests/roomservice.xml.
The way to get breakfast working is to upload all of my files to LineageOS git as device_xxxxxxxxxx
I'm thinking that another repository like themuppets in the past, doesn't works for Lineage. But I don't know why.
I've asked for help in LineageOS irc and an answer was:
xD
This doesn't helps
Click to expand...
Click to collapse
did you try to directly lunch "lineage_daisy-eng"? and (even if it sounds dumb and u controlled this already 20 times) all your device makefiles are in the correct location? You could also add daisy in a vendorsetup.sh in device tree and execute ". build/envsetup.sh" again (should see daisy in lunch menu then).
Don't worry, thats the usual answer u get when asking some "devs" for help with android...
wertus33333 said:
did you try to directly lunch "lineage_daisy-eng"? and (even if it sounds dumb and u controlled this already 20 times) all your device makefiles are in the correct location? You could also add daisy in a vendorsetup.sh in device tree and execute ". build/envsetup.sh" again (should see daisy in lunch menu then).
Don't worry, thats the usual answer u get when asking some "devs" for help with android...
Click to expand...
Click to collapse
All mk files are in path and vendorsetup.sh too. envsetup includes vendorsetup.sh from device/xiaomi/daisy.
Lunch "lineage_daisy-eng", breakfast daisy, breakfast lineage_daisy fails with the same error.
Thanks!
robotusr said:
All mk files are in path and vendorsetup.sh too. envsetup includes vendorsetup.sh from device/xiaomi/daisy.
Lunch "lineage_daisy-eng", breakfast daisy, breakfast lineage_daisy fails with the same error.
Thanks!
Click to expand...
Click to collapse
Hmm... I am building oreo at the moment so i'm not sure if P builds the same way. You declared lineage_daisy in lineage.mk? like this:
device/xiaomi/daisy/lineage.mk:
HTML:
PRODUCT_NAME := lineage_daisy
BOARD_VENDOR := Xiaomi
PRODUCT_GMS_CLIENTID_BASE := android-xiaomi
wertus33333 said:
Hmm... I am building oreo at the moment so i'm not sure if P builds the same way. You declared lineage_daisy in lineage.mk? like this:
device/xiaomi/daisy/lineage.mk:
HTML:
PRODUCT_NAME := lineage_daisy
BOARD_VENDOR := Xiaomi
PRODUCT_GMS_CLIENTID_BASE := android-xiaomi
Click to expand...
Click to collapse
Hi these are my files:
lineage.mk
Code:
# Inherit some common lineage stuff.
$(call inherit-product, vendor/lineage/config/common_full_phone.mk)
# Inherit device configuration
$(call inherit-product, device/xiaomi/daisy/full_daisy.mk)
## Device identifier. This must come after all inclusions
PRODUCT_DEVICE := daisy
PRODUCT_NAME := lineage_daisy
BOARD_VENDOR := Xiaomi
PRODUCT_BRAND := xiaomi
PRODUCT_MODEL := daisy
PRODUCT_MANUFACTURER := xiaomi
full_daisy.mk
Code:
# Copyright (C) 2017 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# Inherit from those products. Most specific first.
$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
$(call inherit-product, $(SRC_TARGET_DIR)/product/full_base_telephony.mk)
# Inherit from daisy_sprout device
$(call inherit-product, device/xiaomi/daisy/device.mk)
# Device identifier. This must come after all inclusions
TARGET_VENDOR := xiaomi
PRODUCT_DEVICE := daisy
PRODUCT_NAME := lineage_daisy
PRODUCT_BRAND := xiaomi
PRODUCT_MODEL := Mi A2 Lite
PRODUCT_MANUFACTURER := xiaomi
vendorsetup.sh
Code:
add_lunch_combo lineage_daisy-eng
lineage.dependencies
Code:
{
"repository": "android_device_xiaomi_msm8953-common",
"target_path": "device/xiaomi/msm8953-common"
}
]
robotusr said:
Hi these are my files:
lineage.mk
Code:
# Inherit some common lineage stuff.
$(call inherit-product, vendor/lineage/config/common_full_phone.mk)
# Inherit device configuration
$(call inherit-product, device/xiaomi/daisy/full_daisy.mk)
## Device identifier. This must come after all inclusions
PRODUCT_DEVICE := daisy
PRODUCT_NAME := lineage_daisy
BOARD_VENDOR := Xiaomi
PRODUCT_BRAND := xiaomi
PRODUCT_MODEL := daisy
PRODUCT_MANUFACTURER := xiaomi
full_daisy.mk
Code:
# Copyright (C) 2017 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# Inherit from those products. Most specific first.
$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
$(call inherit-product, $(SRC_TARGET_DIR)/product/full_base_telephony.mk)
# Inherit from daisy_sprout device
$(call inherit-product, device/xiaomi/daisy/device.mk)
# Device identifier. This must come after all inclusions
TARGET_VENDOR := xiaomi
PRODUCT_DEVICE := daisy
PRODUCT_NAME := lineage_daisy --> this should be "full_daisy" i think
PRODUCT_BRAND := xiaomi
PRODUCT_MODEL := Mi A2 Lite
PRODUCT_MANUFACTURER := xiaomi
vendorsetup.sh
Code:
add_lunch_combo lineage_daisy-eng --> add lunch combo for user and userdebug aswell (maybe this helps xD)
lineage.dependencies
Code:
{
"repository": "android_device_xiaomi_msm8953-common",
"target_path": "device/xiaomi/msm8953-common" --> did you include device/xiaomi/msm8953-common/BoardconfigCommon.mk in BoardConfig.mk?
}
]
Click to expand...
Click to collapse
Here is my daisy los15 tree, it is building at the moment but not sure if it works in the end (maybe this helps you to adapt) also mind the comments i put in the fields above
edit: It does NOT work yet xD
wertus33333 said:
Here is my daisy los15 tree, it is building at the moment but not sure if it works in the end (maybe this helps you to adapt) also mind the comments i put in the fields above
Click to expand...
Click to collapse
Thanks thanks thanks!
I'll try it today.
Best regards!
Finally I have managed to extract blobs. It's not possible to extract all files without root, but I really have this files from vendor.img. Copied manually to directory structure and now I'll try to compile all.
Thanks guys!
@wertus33333
Have you setup any roomservice.xml or local_manifest.xml file to lunch? I'm getting same error
build/make/core/product_config.mk:234: error: Can not locate config makefile for product "lineage_daisy".