[Miscellaneous Android Development] UtCollector@gmail.com:
Step 3:

In you´re ¨home¨ dir make a folder called ICS. (You can give it any name you like.. But i have to start with something right..)

Use the terminal app to cd into ICS folder. (click ¨Dash home¨ icon. from the menu on the left. In the cursor field type perminal to find the app) Just in case you dont know how to cd into the ICS folder. Just type ¨cd ICS¨ in the opend terminal app and you there. (with out the ¨¨)

Step 4:

Now we got to download the Cyanogenmod source files with the terminal app. This can take a very long time. The CWM recovery source comes bundled with the CyanogenMod source.

Pick the version you want to make a recovery for.

I have ICS on my tablet sow im gone use the ICS repo.

Code:

CWM 5 - Gingerbread

repo init -u git://github.com/CyanogenMod/android.git -b gingerbread

CWM 5:

repo init -u git://github.com/CyanogenMod/android.git -b ics

? repo init -u git://github.com/CyanogenMod/android.git -b ics android-4.0.4_r2.1 werkt..

CWM 6 - Jellybean

repo init -u git://github.com/CyanogenMod/android.git -b jellybean

Sow i copy pastle this line in the terminal: ¨repo init -u git://github.com/CyanogenMod/android.git -b ics¨ with out the ¨¨ hit enter.

If asked give a name and email adres. Confirm with Y if its right.

Now type ¨repo sync¨ (with out the ¨¨) in the terminal and hit enter.

Downloading the source will take a very long time.

Step 5:

Now we come to the actuall compiling part. Make sure you have synced the latest source files using the "repo sync" command. Personally i run the ¨repo sync¨ command often to get the newest changes (commits).

Now issue this command :

make -j4 otatools

ore: make otatools

of with log: make otatools 2>&1 | tee tom-tec-OtaTools.log

If it wont work you can try: make CC=gcc CXX=g++ -j4 otatools

If it wont works scroll down to the part about Fix compile problems.

This will run a short time. It will make the tools needed to build the recovery. If everything executed properly a new set of files have been created in ICS/out/host/darwin-x86/bin:

Step 6:

Now we are going to add a not officially supported device. This way we can build CyanogenMod.

Using terminal emulator on your device, issue the command

Code:

dump_image boot /sdcard/boot.img

This will dump the boot image to your sdcard. Transfer it to your home directory.

My Tablet did not have the dump_image file on it..

Sow there are some options open:

Option 1:

place the dump_image file in the bin folder of the tablet. You will need to change the read/write rights of the file ofcource.

I used the root explorer app to do this.

Option 2: Take the boot.img from last official rom.

Link: https://helpdesk.tom-tec.nl/KB/a200/firmware-update-voor-de-tom-tec-atf3657-excellent-7.aspx

Ore here: http://portal.tom-tec.eu/KB/a204/firmware-update-for-the-tom-tec-atf-3657-excellent-7.aspx

ore:

http://portal.tom-tec.eu/KB/a204/firmware-update-for-the-tom-tec-atf-3657-excellent-7.aspx

Option 3: Just dump the boot.img file from the tablet. And dump the

recovery.img to.

Dump boot.img this way: dd if=/dev/block/mtdblock0 of=/mnt/ext_sd/boot.img bs=4096

Dump recovery.img this way: dd if=/dev/block/mtdblock6 of=/mnt/ext_sd/recovery.img bs=4096

You can use ADB terminal from pc ore go download a terminal from Google play store on you´re android device.

To build Android from source for a new device, you need to set up a board config and its makefiles. This is generally a long and tedious process. Luckily, if you are only building recovery, it is a lot easier. From the root of your Android source directory (assuming you've run envsetup.sh), run the following (substituting names appropriately):

Code:

build/tools/device/mkvendor.sh device_manufacturer_name device_name /your/path/to/the/boot.img

For Tom-Tec 7 excellent, the command will go as follows :

Code:

build/tools/device/mkvendor.sh YG m805_892x ~/boot.img

and for the recovery: of: build/tools/device/mkvendor.sh YG m805_892x ~/recovery.img

Please note that m805_892x is the device name..... Only use "~/boot.img" if you have the boot image in your home directory. Or else please specify the correct path.

You will receive the confirmation "Done!" if everything worked. The mkvendor.sh script will also have created the following directory in your Android source tree:

manufacturer_name/device_name

YG/m805_892x

In case of the Tom-Tec 7 excellent you can find the output files here:

/home/youreUsernames/ICS/device/YG/m805_892x

Step 7 :

Now that you have the device config ready, proceed.

Type the following code in your terminal in the source directory.

Code:

. build/envsetup.sh

gives:

including device/ti/panda/vendorsetup.sh

including device/YG/m805_892x/vendorsetup.sh

including vendor/cm/vendorsetup.sh

including sdk/bash_completion/adb.bash

This will setup the build environment for you to work.

Now launch the command

Code:

lunch full_device_name-eng

For Tom-tec 7 excellent it is: lunch full_m805_892x-eng

But seems best to me to use: lunch full_m805_892x-userdebug

This step will be done in a short time.

This will set the build system up to build for your new device. Open up the directory in a file explorer or IDE. You should have the following files: AndroidBoard.mk, AndroidProducts.mk, BoardConfig.mk, device_.mk, kernel, system.prop, recovery.fstab, and vendorsetup.sh.

Now we can go and eddit the files in the directory: /home/..username../ICS/device/YG/m805_892x

The two files you are interested in are recovery.fstab and kernel. The kernel in that directory is the stock one that was extracted from the boot.img that was provided earlier. For the most part, recovery.fstab will work on most devices that have mtd, emmc, or otherwise named partitions. But if not, recovery.fstab will need to be tweaked to support mounts and their mount points. For example, if your /sdcard mount is /dev/block/mmcblk1p1, you would need the following lines in your BoardConfig.mk

/sdcard vfat /dev/block/mmcblk1p1

Once the recovery.fstab has been properly setup, you can proceed to the next step.

Step 8 :

Now we build the recovery.

Code:

make -j4 recoveryimage

Ore with a log file:

make -j4 recoveryimage 2>&1 | tee tom-tec-revovery.log

(Will be checking build tools if clean command is used.)

This command builds the recovery image

You can use the command

Code:

make -j4 recoveryzip

Ore with a log:

make -j4 recoveryzip 2>&1 | tee tom-tec-fashableZip.log

To make a fakeflash recovery i.e. a temporary recovery to test out on the actual device.

Your recovery can then be found at "your_source_directory/OUT/target/product/m805_892x/recovery.img" and the temporary fakeflash zip in the utilities folder at the same location.

If everything works out well, you will have a working recovery.

At the moment i havent been able to make a CWM recovery with all the options working. Sow a nice bit of user feedback will help making it i hope.

Once you have working builds, notify "koush", on Github and he can build official releases and add ROM Manager support!

IF YOU HAVE ALREADY COMPILED THE SOURCE AND YOU MAKE CHANGES TO THE BoardConfig.mk YOU WILL HAVE TO DO THIS FOR YOUR NEXT BUILD

$ cd ICS

$ make clobber

ore make clean

$ . build/envsetup.sh

$ lunch full_m805_892x-eng ore lunch full_m805_892x-userdebug

of lunch en nummer kiezen

$ make -j4 recoveryimage 2>&1 | tee tom-tec-recovery.log

$ make -j4 recoveryzip

$ make -j4 bootimage

$ make -j4 userdataimage

$ make -j4 systemimage

And for building the rom: make -j4 otapackage 2>&1 | tee tom-tec-build.log

Download files:

New 2014:

CWM recover V6.0.12 last: http://www.mediafire.com/view/w40bzdl1ujh60ay/recovery

info:Making a backup and restore works. The best part i think.

Some options dont work jet. Its to late to tell much about.

Everything works except for:

USB mount

Key test close to working.

choose backup format

I made the recovery flashable from stock recovery. Download it here.

cwm recovery V6.x beta flashable:

later again

Recovery FakeFlash update.zip (recoveryzip): http://www.mediafire.com/?r3uhcqol1t55ii5

You can install this from the stock recovery. It wont harm the system! It will give you the option to make a rom backup.

Its not a full cwm recovery but it is a start.

If you install a rom using Recovery FakeFlash update.zip there will be a log file made in: /cach/recovery/

Very usefull to check if you´re rom is not booting:D

For me with the Tom-tec. If i restore the userdata.img the device wont fully start. It keeps loading the android image.

Dump you recovery. Flashable file.:

http://www.mediafire.com/?jk929dw8vpw1w1f

If you want to go back to the stock recovery use this file:

flashable stock recovery v3e

http://www.mediafire.com/?q8fgeqtwt2iqau8

If you´re not able to build the otatools.

Download Otatools CM9:

http://www.mediafire.com/?job80hd2n1jfnqa

Download the cm9 rom!:

http://xdaforums.com/android/development/dev-unofficial-tom-tec-7-excellent-t2946072

Links:

Compile Tccutils to unpack and repack images: http://xdaforums.com/showthread.php?t=1873041

How to install the SDK: http://wiki.cyanogenmod.com/index.php?title=Howto:_Install_the_Android_SDK

Official build guide by Google. http://source.android.com/source/initializing.html

Official cm guide: http://wiki.cyanogenmod.com/index.php?title=Building_from_source

Android Platform Developer's Guide: http://www.kandroid.org/online-pdk/guide/

Guide by koush: http://www.koushikdutta.com/2010/10/porting-clockwork-recovery-to-new.html

Newbe friendly guide i used: http://xdaforums.com/showthread.php?t=1866545

Compile ICS on Ubuntu: http://xdaforums.com/showthread.php?t=1354865

Android ROM Development From Source To End: http://xdaforums.com/chef-central/android/guide-android-rom-development-t2814763

How To Port CyanogenMod Android To Your Own Device: http://wiki.cyanogenmod.org/w/Doc:_porting_intro

------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Some tips :

If you want to compile CWM 6, sync the jellybean branch using the command :

Code:

repo init -u git://github.com/CyanogenMod/android.git -b jellybean

repo sync

If you want to compile CWM 6 on a 32 bit system, you need to sync THIS source too. Instructions are given in the readme.

Run "make clobber" between builds if you change the BoardConfig.mk, or the change will not get picked up.

Credits :

Koush for this guide. Find 1 of his githubs to see the info he gives in the make files. Helps a lot.