aboutsummaryrefslogtreecommitdiffstats
path: root/rootdir
diff options
context:
space:
mode:
authorZiyan <jaraidaniel@gmail.com>2015-08-17 17:21:00 +0200
committerZiyan <jaraidaniel@gmail.com>2015-08-17 21:49:38 +0200
commitd52281c52a0336a12cab3214b03fd17540608a53 (patch)
tree06b37cfda6a04fcb1c09fbd0934d2109533a5947 /rootdir
parent046d924d7be7247e49891bcaca6993eb5afd08cd (diff)
downloaddevice_samsung_espressowifi-d52281c52a0336a12cab3214b03fd17540608a53.zip
device_samsung_espressowifi-d52281c52a0336a12cab3214b03fd17540608a53.tar.gz
device_samsung_espressowifi-d52281c52a0336a12cab3214b03fd17540608a53.tar.bz2
espresso-common: change fstab handling (1/3)
Previously, fstab mounting was done in init.device.rc. This caused some problems, as for some reason, init.device.rc was executed after init.tab2.rc, not before, delaying the fstab mounts. Let's symlink fstab.espresso to fstab.espresso10 for espresso10 variants instead, so we don't need to use init.device.rc to mount fstab entries anymore. Change-Id: Ia8d2f292326cea90ac7aa19fa1ffce4fb13529d1
Diffstat (limited to 'rootdir')
-rw-r--r--rootdir/Android.mk42
-rw-r--r--rootdir/etc/init.device.espresso.rc2
-rw-r--r--rootdir/etc/init.device.espresso10.rc2
-rw-r--r--rootdir/etc/init.tab2.rc3
4 files changed, 24 insertions, 25 deletions
diff --git a/rootdir/Android.mk b/rootdir/Android.mk
index 4d6686f..ea48207 100644
--- a/rootdir/Android.mk
+++ b/rootdir/Android.mk
@@ -3,17 +3,35 @@ include $(CLEAR_VARS)
# boot.img parts
include $(CLEAR_VARS)
-ifneq ($(filter p3100 p3110,$(TARGET_DEVICE)),)
LOCAL_MODULE := fstab.espresso
-else
-LOCAL_MODULE := fstab.espresso10
-endif
LOCAL_MODULE_TAGS := optional eng
LOCAL_MODULE_CLASS := ETC
LOCAL_SRC_FILES := etc/fstab.tab2
LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT)
include $(BUILD_PREBUILT)
+ifneq ($(filter p5100 p5110,$(TARGET_DEVICE)),)
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := fstab.espresso10
+LOCAL_MODULE_TAGS := optional eng
+LOCAL_MODULE_CLASS := ETC
+LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT)
+
+include $(BUILD_SYSTEM)/base_rules.mk
+
+$(LOCAL_BUILT_MODULE): TARGET := $(TARGET_ROOT_OUT)/fstab.espresso
+$(LOCAL_BUILT_MODULE): SYMLINK := $(TARGET_ROOT_OUT)/$(LOCAL_MODULE)
+$(LOCAL_BUILT_MODULE):
+ $(hide) echo "Symlink: $(SYMLINK) -> $(TARGET)"
+ $(hide) mkdir -p $(dir $@)
+ $(hide) mkdir -p $(dir $(SYMLINK))
+ $(hide) rm -rf $@
+ $(hide) rm -rf $(SYMLINK)
+ $(hide) ln -sf $(TARGET) $(SYMLINK)
+ $(hide) touch $@
+endif
+
include $(CLEAR_VARS)
ifneq ($(filter p3100 p3110,$(TARGET_DEVICE)),)
LOCAL_MODULE := init.espresso.rc
@@ -50,22 +68,6 @@ LOCAL_SRC_FILES := etc/ueventd.tab2.rc
LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT)
include $(BUILD_PREBUILT)
-include $(CLEAR_VARS)
-ifneq ($(filter p3100 p3110,$(TARGET_DEVICE)),)
-LOCAL_MODULE := init.device.espresso.rc
-else
-LOCAL_MODULE := init.device.espresso10.rc
-endif
-LOCAL_MODULE_TAGS := optional eng
-LOCAL_MODULE_CLASS := ETC
-ifneq ($(filter p3100 p3110,$(TARGET_DEVICE)),)
-LOCAL_SRC_FILES := etc/init.device.espresso.rc
-else
-LOCAL_SRC_FILES := etc/init.device.espresso10.rc
-endif
-LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT)
-include $(BUILD_PREBUILT)
-
# recovery.img parts
ifneq ($(filter p3100 p3110,$(TARGET_DEVICE)),)
include $(CLEAR_VARS)
diff --git a/rootdir/etc/init.device.espresso.rc b/rootdir/etc/init.device.espresso.rc
deleted file mode 100644
index fa47c87..0000000
--- a/rootdir/etc/init.device.espresso.rc
+++ /dev/null
@@ -1,2 +0,0 @@
-on fs
- mount_all /fstab.espresso
diff --git a/rootdir/etc/init.device.espresso10.rc b/rootdir/etc/init.device.espresso10.rc
deleted file mode 100644
index d1accab..0000000
--- a/rootdir/etc/init.device.espresso10.rc
+++ /dev/null
@@ -1,2 +0,0 @@
-on fs
- mount_all /fstab.espresso10
diff --git a/rootdir/etc/init.tab2.rc b/rootdir/etc/init.tab2.rc
index fba6cfa..642ba24 100644
--- a/rootdir/etc/init.tab2.rc
+++ b/rootdir/etc/init.tab2.rc
@@ -1,5 +1,4 @@
import init.${ro.hardware}.usb.rc
-import init.device.${ro.hardware}.rc
on init
mkdir /mnt/shell/emulated 0700 shell shell
@@ -47,6 +46,8 @@ loglevel 7
on fs
mkdir /efs
+ mount_all /fstab.espresso
+
# We chown/chmod /efs because mount is run as root + defaults
chown radio system /efs
chmod 0775 /efs