diff --git a/package/busybox/busybox.mk b/package/busybox/busybox.mk index 2001c2dbdb..52b6f0f328 100644 --- a/package/busybox/busybox.mk +++ b/package/busybox/busybox.mk @@ -194,6 +194,8 @@ endef BUSYBOX_TARGET_FINALIZE_HOOKS += BUSYBOX_SET_GETTY endif # BR2_TARGET_GENERIC_GETTY +BUSYBOX_TARGET_FINALIZE_HOOKS += SYSTEM_REMOUNT_ROOT_INITTAB + endif # BR2_INIT_BUSYBOX ifeq ($(BR2_PACKAGE_BUSYBOX_SELINUX),y) diff --git a/package/skeleton/skeleton.mk b/package/skeleton/skeleton.mk index 7ad2cb1a66..4a66f6ceca 100644 --- a/package/skeleton/skeleton.mk +++ b/package/skeleton/skeleton.mk @@ -148,21 +148,6 @@ endif endif TARGET_FINALIZE_HOOKS += SKELETON_BIN_SH -ifeq ($(BR2_INIT_BUSYBOX)$(BR2_INIT_SYSV),y) -ifeq ($(BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW),y) -# Find commented line, if any, and remove leading '#'s -define SKELETON_REMOUNT_RW - $(SED) '/^#.*-o remount,rw \/$$/s~^#\+~~' $(TARGET_DIR)/etc/inittab -endef -else -# Find uncommented line, if any, and add a leading '#' -define SKELETON_REMOUNT_RW - $(SED) '/^[^#].*-o remount,rw \/$$/s~^~#~' $(TARGET_DIR)/etc/inittab -endef -endif -TARGET_FINALIZE_HOOKS += SKELETON_REMOUNT_RW -endif # BR2_INIT_BUSYBOX || BR2_INIT_SYSV - endif # BR2_ROOTFS_SKELETON_DEFAULT $(eval $(generic-package)) diff --git a/package/sysvinit/sysvinit.mk b/package/sysvinit/sysvinit.mk index e9aa69b27b..a606ddabf0 100644 --- a/package/sysvinit/sysvinit.mk +++ b/package/sysvinit/sysvinit.mk @@ -55,4 +55,6 @@ endef SYSVINIT_TARGET_FINALIZE_HOOKS += SYSVINIT_SET_GETTY endif # BR2_TARGET_GENERIC_GETTY +SYSVINIT_TARGET_FINALIZE_HOOKS += SYSTEM_REMOUNT_ROOT_INITTAB + $(eval $(generic-package)) diff --git a/system/system.mk b/system/system.mk index 7b843dad8e..ca6bf1388f 100644 --- a/system/system.mk +++ b/system/system.mk @@ -28,6 +28,9 @@ # - SYSTEM_GETTY_OPTIONS # the un-quoted getty setting # +# - SYSTEM_REMOUNT_ROOT_INITTAB +# set inittab to remount root read-write or read-only +# # This function handles the merged or non-merged /usr cases ifeq ($(BR2_ROOTFS_MERGED_USR),y) @@ -71,3 +74,15 @@ SYSTEM_GETTY_PORT = $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_PORT)) SYSTEM_GETTY_BAUDRATE = $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_BAUDRATE)) SYSTEM_GETTY_TERM = $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_TERM)) SYSTEM_GETTY_OPTIONS = $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_OPTIONS)) + +ifeq ($(BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW),y) +# Find commented line, if any, and remove leading '#'s +define SYSTEM_REMOUNT_ROOT_INITTAB + $(SED) '/^#.*-o remount,rw \/$$/s~^#\+~~' $(TARGET_DIR)/etc/inittab +endef +else +# Find uncommented line, if any, and add a leading '#' +define SYSTEM_REMOUNT_ROOT_INITTAB + $(SED) '/^[^#].*-o remount,rw \/$$/s~^~#~' $(TARGET_DIR)/etc/inittab +endef +endif