From 6c3e3ad4197714ea39fcd49d572a1713f803d835 Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Sat, 3 Nov 2012 08:27:58 +0000 Subject: New top-level directory: system This directory groups the following elements: * the default root filesystem skeleton * the default device tables * the Config.in options for system configuration (UART port for getty, system hostname, etc.) * the make rules to apply the system configuration options Even though the skeleton and device tables could have lived in fs/, it would have been strange to have the UART, system hostname and other related options into fs/. A new system/ directory makes more sense. As a consequence, this patch also removes target/Makefile.in, which has become useless in the process. [Peter: fixup TARGET_SKELETON settings / documentation to match] Signed-off-by: Thomas Petazzoni Acked-by: Yann E. MORIN Acked-by: Arnout Vandecappelle (Essensium/Mind) Signed-off-by: Peter Korsgaard --- system/system.mk | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 system/system.mk (limited to 'system/system.mk') diff --git a/system/system.mk b/system/system.mk new file mode 100644 index 000000000..4185202b7 --- /dev/null +++ b/system/system.mk @@ -0,0 +1,53 @@ +TARGET_GENERIC_HOSTNAME:=$(call qstrip,$(BR2_TARGET_GENERIC_HOSTNAME)) +TARGET_GENERIC_ISSUE:=$(call qstrip,$(BR2_TARGET_GENERIC_ISSUE)) +TARGET_GENERIC_GETTY:=$(call qstrip,$(BR2_TARGET_GENERIC_GETTY_PORT)) +TARGET_GENERIC_GETTY_BAUDRATE:=$(call qstrip,$(BR2_TARGET_GENERIC_GETTY_BAUDRATE)) + +target-generic-hostname: + mkdir -p $(TARGET_DIR)/etc + echo "$(TARGET_GENERIC_HOSTNAME)" > $(TARGET_DIR)/etc/hostname + $(SED) '$$a \127.0.1.1\t$(TARGET_GENERIC_HOSTNAME)' \ + -e '/^127.0.1.1/d' $(TARGET_DIR)/etc/hosts + +target-generic-issue: + mkdir -p $(TARGET_DIR)/etc + echo "$(TARGET_GENERIC_ISSUE)" > $(TARGET_DIR)/etc/issue + +target-generic-getty-busybox: + $(SED) '/# GENERIC_SERIAL$$/s~^.*#~$(TARGET_GENERIC_GETTY)::respawn:/sbin/getty -L $(TARGET_GENERIC_GETTY) $(TARGET_GENERIC_GETTY_BAUDRATE) vt100 #~' \ + $(TARGET_DIR)/etc/inittab + +# In sysvinit inittab, the "id" must not be longer than 4 bytes, so we +# skip the "tty" part and keep only the remaining. +target-generic-getty-sysvinit: + $(SED) '/# GENERIC_SERIAL$$/s~^.*#~$(shell echo $(TARGET_GENERIC_GETTY) | tail -c+4)::respawn:/sbin/getty -L $(TARGET_GENERIC_GETTY) $(TARGET_GENERIC_GETTY_BAUDRATE) vt100 #~' \ + $(TARGET_DIR)/etc/inittab + +# Find commented line, if any, and remove leading '#'s +target-generic-do-remount-rw: + $(SED) '/^#.*# REMOUNT_ROOTFS_RW$$/s~^#\+~~' $(TARGET_DIR)/etc/inittab + +# Find uncommented line, if any, and add a leading '#' +target-generic-dont-remount-rw: + $(SED) '/^[^#].*# REMOUNT_ROOTFS_RW$$/s~^~#~' $(TARGET_DIR)/etc/inittab + +ifneq ($(TARGET_GENERIC_HOSTNAME),) +TARGETS += target-generic-hostname +endif + +ifneq ($(TARGET_GENERIC_ISSUE),) +TARGETS += target-generic-issue +endif + +ifeq ($(BR2_ROOTFS_SKELETON_DEFAULT),y) +ifeq ($(BR2_PACKAGE_SYSVINIT),y) +TARGETS += target-generic-getty-sysvinit +else +TARGETS += target-generic-getty-busybox +endif +ifeq ($(BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW),y) +TARGETS += target-generic-do-remount-rw +else +TARGETS += target-generic-dont-remount-rw +endif +endif -- cgit v1.2.3