use "home" to select instead of "power" button in CWM Recovery

i have successfully ported CWM Recovery to my ZTE Merit/Avail/Roamer using the CyanogenMod gingerbread source

(i did not use the unofficial port that was built from the ZTE Blade because the screen is upside down)

everything works just like it is supposed to--absolutely flawless. build went through without a hitch.

decided that i instead wanted to use the "home" key to select menu options in the CWM Recovery instead of the "power" button that is default (had to uncomment BOARD_HAS_NO_SELECT_BUTTON in the BoardConfig.mk because there is no camera button on this phone)

so i copied the recovery_ui.c from the working Blade source (which uses the "home" key instead of the "power" key), placed it into my ZTE Roamer (Merit/Avail) source and added BOARD_CUSTOM_RECOVERY_KEYMAPPING := /device/zte/roamer/recovery_ui.c to my BoardConfig.mk

**there is no problem reading the location of the file so don't suggest to change it**

the recovery_ui.c has not been edited at all and it works without a flaw on the Blade, and it doesn't use any other sources from /bootable/recovery/ than what any other one uses, but i get these errors when i try to build.

neither have recovery.o, recovery.c, extendedcommands.o, or ui.c been edited in any way and they are the standard ones included in the CyanogenMod source. and these errors are not present when the Blade is built using the same recovery_ui.c

here's my BoardConfig.mk

Code (Text):

# inherit from the proprietary version

-include vendor/zte/roamer/BoardConfigVendor.mk

TARGET_NO_BOOTLOADER := true

TARGET_BOARD_PLATFORM := unknown

TARGET_CPU_ABI := armeabi

TARGET_BOOTLOADER_BOARD_NAME := roamer

BOARD_KERNEL_CMDLINE :=

BOARD_KERNEL_BASE := 0x02600000

BOARD_KERNEL_PAGESIZE := 2048

# fix this up by examining /proc/mtd on a running device

BOARD_BOOTIMAGE_PARTITION_SIZE := 0x00380000

BOARD_RECOVERYIMAGE_PARTITION_SIZE := 0x00480000

BOARD_SYSTEMIMAGE_PARTITION_SIZE := 0x08c60000

BOARD_USERDATAIMAGE_PARTITION_SIZE := 0x105c0000

BOARD_FLASH_BLOCK_SIZE := 131072

TARGET_PREBUILT_KERNEL := device/zte/roamer/kernel

TARGET_RECOVER_INITRC := device/zte/roamer/recovery.rc

BOARD_CUSTOM_RECOVERY_KEYMAPPING:= device/zte/roamer/recovery_u.ic

#BOARD_HAS_NO_SELECT_BUTTON := true

# Use this flag if the board has a ext4 partition larger than 2gb

#BOARD_HAS_LARGE_FILESYSTEM := true

here's the recovery_ui.c

Code (Text):

#include <linux/input.h>

#include "recovery_ui.h"

#include "common.h"

#include "extendedcommands.h"

char* MENU_HEADERS[] = { "Use vol keys to highlight and home to select.",

"",

NULL };

char* MENU_ITEMS[] = { "reboot system now",

"apply update from sdcard",

"wipe data/factory reset",

"wipe cache partition",

"install zip from sdcard",

"backup and restore",

"mounts and storage",

"advanced",

"power off",

NULL };

int device_recovery_start() {

return 0;

}

int device_toggle_display(volatile char* key_pressed, int key_code) {

int alt = key_pressed[KEY_LEFTALT] || key_pressed[KEY_RIGHTALT];

if (alt && key_code == KEY_L)

return 1;

// allow toggling of the display if the correct key is pressed, and the display toggle is allowed or the display is currently off

someone who is familiar with this, who is not some novice that knows nothing about building a recovery.img from CyanogenMod source, please help me figure this out so that i can use the home button instead of the power button.

is there any easier way to change this than by using a custom recovery_ui.c???