recovery: don't delete hardware specific init*.rc files

init used to automatically execute hardware specific init.rc files from
init.<hardware>.rc.  If the hardware specific init.rc file was installed
in recovery.img, various unwanted services would try to start, so init*.rc
was deleted when creating the recovery root directory.

init was recently modified to explicitly import init.${ro.hardware}.rc
from the default init.rc, rather than always trying to load it.  Since
recovery replaces the default init.rc with a custom one, it will never
try to load hardware specific init files.

In addition, there are cases where we need to start hardware specific
services, for example watchdogd, so we need
init.recovery.${ro.hardware}.rc to be installed.

Modify the build rule to delete the default init.rc from the recovery
root directory so it can be replaced with the custom recovery init.rc,
but leave all the hardware specific init files in place.

Bug: 6953625
Change-Id: I5d9555e3d54d2f1d9f49fb981bd412c53741337e
This commit is contained in:
Colin Cross 2012-08-08 12:59:32 -07:00
parent 6bdeb4481e
commit 629c87b832
1 changed files with 1 additions and 1 deletions

View File

@ -651,7 +651,7 @@ $(INSTALLED_RECOVERYIMAGE_TARGET): $(MKBOOTFS) $(MKBOOTIMG) $(MINIGZIP) \
mkdir -p $(TARGET_RECOVERY_ROOT_OUT)/tmp
echo Copying baseline ramdisk...
cp -R $(TARGET_ROOT_OUT) $(TARGET_RECOVERY_OUT)
rm $(TARGET_RECOVERY_ROOT_OUT)/init*.rc
rm $(TARGET_RECOVERY_ROOT_OUT)/init.rc
echo Modifying ramdisk contents...
cp -f $(recovery_initrc) $(TARGET_RECOVERY_ROOT_OUT)/
cp -f $(recovery_binary) $(TARGET_RECOVERY_ROOT_OUT)/sbin/