initscripts: new package
PATCH 1/1 initscripts: new package
The folder init.d is currently installed by default since it's part of our skeleton.
This patch creates a package out of it and make busybox/sysvinit depends on it.
This way, if you chose another init, you don't end up with a useless init.d folder.
---
v1 -> v2:
- Redo the patch using git format-patch -M
---
package/busybox/busybox.mk | 6 +++++
.../inittab => package/initscripts/busybox_inittab | 0
.../etc => package/initscripts}/init.d/S20urandom | 0
.../etc => package/initscripts}/init.d/S40network | 0
.../etc => package/initscripts}/init.d/rcK | 0
.../etc => package/initscripts}/init.d/rcS | 0
package/initscripts/initscripts.mk | 28 ++++++++++++++++++++++
.../inittab => initscripts/sysvinit_inittab} | 0
package/sysvinit/sysvinit.mk | 11 +++++++--
9 files changed, 43 insertions(+), 2 deletions(-)
rename system/skeleton/etc/inittab => package/initscripts/busybox_inittab (100%)
rename {system/skeleton/etc => package/initscripts}/init.d/S20urandom (100%)
rename {system/skeleton/etc => package/initscripts}/init.d/S40network (100%)
rename {system/skeleton/etc => package/initscripts}/init.d/rcK (100%)
rename {system/skeleton/etc => package/initscripts}/init.d/rcS (100%)
create mode 100644 package/initscripts/initscripts.mk
rename package/{sysvinit/inittab => initscripts/sysvinit_inittab} (100%)package/busybox/busybox.mk +6 -0
@@ -16,6 +16,10 @@ BUSYBOX_CFLAGS = \ BUSYBOX_LDFLAGS = \ $(TARGET_LDFLAGS) +# initscripts contains/install only inittab and the init.d folder with base +# scripts. +BUSYBOX_DEPENDENCIES = initscripts + # Link against libtirpc if available so that we can leverage its RPC # support for NFS mounting with BusyBox ifeq ($(BR2_PACKAGE_LIBTIRPC),y)
@@ -220,8 +224,10 @@ define BUSYBOX_INSTALL_TARGET_CMDS fi $(BUSYBOX_INSTALL_MDEV_SCRIPT) $(BUSYBOX_INSTALL_MDEV_CONF) +ifeq ($(BR2_INIT_BUSYBOX),y) $(BUSYBOX_INSTALL_LOGGING_SCRIPT) $(BUSYBOX_INSTALL_WATCHDOG_SCRIPT) +endif endef $(eval $(kconfig-package))
package/initscripts/busybox_inittab renamed from system/skeleton/etc/inittab +0 -0
package/initscripts/init.d/S20urandom renamed from system/skeleton/etc/init.d/S20urandom +0 -0
package/initscripts/init.d/S40network renamed from system/skeleton/etc/init.d/S40network +0 -0
package/initscripts/init.d/rcK renamed from system/skeleton/etc/init.d/rcK +0 -0
package/initscripts/init.d/rcS renamed from system/skeleton/etc/init.d/rcS +0 -0
package/initscripts/initscripts.mk new file +28 -0
@@ -0,0 +1,28 @@ +################################################################################ +# +# initscripts +# +################################################################################ + +# source included in buildroot +INITSCRIPTS_SOURCE = + +# Note: We need to override Busybox's inittab with an inittab compatible with +# sysvinit if we want SYSVINIT as our init. +ifeq ($(BR2_PACKAGE_SYSVINIT),y) +define INITSCRIPTS_INSTALL_INITTAB + $(INSTALL) -D -m 0644 package/initscripts/sysvinit_inittab $(TARGET_DIR)/etc/inittab +endef +else +define INITSCRIPTS_INSTALL_INITTAB + $(INSTALL) -D -m 0644 package/initscripts/busybox_inittab $(TARGET_DIR)/etc/inittab +endef +endif + +define INITSCRIPTS_INSTALL_TARGET_CMDS + mkdir -p $(TARGET_DIR)/etc/init.d + $(INSTALL) -D -m 0755 package/initscripts/init.d/* $(TARGET_DIR)/etc/init.d/ + $(INITSCRIPTS_INSTALL_INITTAB) +endef + +$(eval $(generic-package))
package/initscripts/sysvinit_inittab renamed from package/sysvinit/inittab +0 -0
package/sysvinit/sysvinit.mk +9 -2
@@ -11,9 +11,13 @@ SYSVINIT_SITE = $(BR2_DEBIAN_MIRROR)/debian/pool/main/s/sysvinit SYSVINIT_LICENSE = GPLv2+ SYSVINIT_LICENSE_FILES = COPYING -# Override BusyBox implementations if BusyBox is enabled. +# initscripts contains/install only inittab and the init.d folder with base +# scripts. +SYSVINIT_DEPENDENCIES = initscripts + +# Override Busybox implementations if Busybox is enabled. ifeq ($(BR2_PACKAGE_BUSYBOX),y) -SYSVINIT_DEPENDENCIES = busybox +SYSVINIT_DEPENDENCIES += busybox endif define SYSVINIT_DEBIAN_PATCHES
@@ -34,9 +38,12 @@ define SYSVINIT_INSTALL_TARGET_CMDS for x in halt init shutdown killall5; do \ $(INSTALL) -D -m 0755 $(@D)/src/$$x $(TARGET_DIR)/sbin/$$x || exit 1; \ done +<<<<<<< HEAD # Override BusyBox's inittab with an inittab compatible with # sysvinit $(INSTALL) -D -m 0644 package/sysvinit/inittab $(TARGET_DIR)/etc/inittab +======= +>>>>>>> initscripts: new package ln -sf /sbin/halt $(TARGET_DIR)/sbin/reboot ln -sf /sbin/halt $(TARGET_DIR)/sbin/poweroff ln -sf killall5 $(TARGET_DIR)/sbin/pidof
Signature · 1 line
2.1.1
PATCH 1/1 initscripts: new package
Hi Maxime,
package/sysvinit/sysvinit.mk define SYSVINIT_INSTALL_TARGET_CMDS · line 49
Quoted 13 lines · Maxime Hadjinlian
package/sysvinit/sysvinit.mk +3
-0@@ -34,9 +38,12 @@ define SYSVINIT_INSTALL_TARGET_CMDS for x in halt init shutdown killall5; do \ $(INSTALL) -D -m 0755 $(@D)/src/$$x $(TARGET_DIR)/sbin/$$x || exit 1; \ done +<<<<<<< HEAD # Override BusyBox's inittab with an inittab compatible with # sysvinit $(INSTALL) -D -m 0644 package/sysvinit/inittab $(TARGET_DIR)/etc/inittab +======= +>>>>>>> initscripts: new package ln -sf /sbin/halt $(TARGET_DIR)/sbin/reboot ln -sf /sbin/halt $(TARGET_DIR)/sbin/poweroff ln -sf killall5 $(TARGET_DIR)/sbin/pidof
Something went wrong here.
baruch
Signature · 3 lines
http://baruch.siach.name/blog/ ~. .~ Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
- baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -PATCH 1/1 initscripts: new package
Quoted 7 lines · Baruch Siach
Hi Maxime,
Review define SYSVINIT_INSTALL_TARGET_CMDS · line 39
Quoted 3 lines · Maxime Hadjinlian
(quoted diff) +0
-0@@ -34,9 +38,12 @@ define SYSVINIT_INSTALL_TARGET_CMDS for x in halt init shutdown killall5; do \ $(INSTALL) -D -m 0755 $(@D)/src/$$x
$(TARGET_DIR)/sbin/$$x || exit 1; \
Quoted 5 lines
package/sysvinit/sysvinit.mk define SYSVINIT_INSTALL_TARGET_CMDS
Quoted 5 lines
package/sysvinit/sysvinit.mk +1
-0done +<<<<<<< HEAD # Override BusyBox's inittab with an inittab compatible with # sysvinit $(INSTALL) -D -m 0644 package/sysvinit/inittab
$(TARGET_DIR)/etc/inittab
Quoted 7 lines
package/sysvinit/sysvinit.mk define SYSVINIT_INSTALL_TARGET_CMDS · line 49
Quoted 5 lines
package/sysvinit/sysvinit.mk +2
-0+======= +>>>>>>> initscripts: new package ln -sf /sbin/halt $(TARGET_DIR)/sbin/reboot ln -sf /sbin/halt $(TARGET_DIR)/sbin/poweroff ln -sf killall5 $(TARGET_DIR)/sbin/pidofSomething went wrong here.
Oops ! Rebasing done wrong. Thanks ! I'll respin that.
Quoted 5 lines
baruch
--
http://baruch.siach.name/blog/ ~. .~ Tk Open
Systems
Quoted 1 line
=}------------------------------------------------ooO--U--Ooo------------{=
Quoted 1 line
- baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20141013/c8615d32/attachment.html>