1 TARGET_GENERIC_HOSTNAME
= $(call qstrip
,$(BR2_TARGET_GENERIC_HOSTNAME
))
2 TARGET_GENERIC_ISSUE
= $(call qstrip
,$(BR2_TARGET_GENERIC_ISSUE
))
3 TARGET_GENERIC_ROOT_PASSWD
= $(call qstrip
,$(BR2_TARGET_GENERIC_ROOT_PASSWD
))
4 TARGET_GENERIC_PASSWD_METHOD
= $(call qstrip
,$(BR2_TARGET_GENERIC_PASSWD_METHOD
))
5 TARGET_GENERIC_BIN_SH
= $(call qstrip
,$(BR2_SYSTEM_BIN_SH
))
6 TARGET_GENERIC_GETTY_PORT
= $(call qstrip
,$(BR2_TARGET_GENERIC_GETTY_PORT
))
7 TARGET_GENERIC_GETTY_BAUDRATE
= $(call qstrip
,$(BR2_TARGET_GENERIC_GETTY_BAUDRATE
))
8 TARGET_GENERIC_GETTY_TERM
= $(call qstrip
,$(BR2_TARGET_GENERIC_GETTY_TERM
))
9 TARGET_GENERIC_GETTY_OPTIONS
= $(call qstrip
,$(BR2_TARGET_GENERIC_GETTY_OPTIONS
))
11 ifeq ($(BR2_TARGET_GENERIC_GETTY
),y
)
12 define SYSTEM_SECURETTY
13 grep
-q
'^$(TARGET_GENERIC_GETTY_PORT)$$' $(TARGET_DIR
)/etc
/securetty || \
14 echo
'$(TARGET_GENERIC_GETTY_PORT)' >> $(TARGET_DIR
)/etc
/securetty
16 TARGET_FINALIZE_HOOKS
+= SYSTEM_SECURETTY
19 ifneq ($(TARGET_GENERIC_HOSTNAME
),)
20 define SYSTEM_HOSTNAME
21 mkdir
-p
$(TARGET_DIR
)/etc
22 echo
"$(TARGET_GENERIC_HOSTNAME)" > $(TARGET_DIR
)/etc
/hostname
23 $(SED
) '$$a \127.0.1.1\t$(TARGET_GENERIC_HOSTNAME)' \
24 -e
'/^127.0.1.1/d' $(TARGET_DIR
)/etc
/hosts
26 TARGET_FINALIZE_HOOKS
+= SYSTEM_HOSTNAME
29 ifneq ($(TARGET_GENERIC_ISSUE
),)
31 mkdir
-p
$(TARGET_DIR
)/etc
32 echo
"$(TARGET_GENERIC_ISSUE)" > $(TARGET_DIR
)/etc
/issue
34 TARGET_FINALIZE_HOOKS
+= SYSTEM_ISSUE
37 ifneq ($(TARGET_GENERIC_ROOT_PASSWD
),)
38 TARGETS
+= host-mkpasswd
41 define SET_NETWORK_LOCALHOST
43 echo
"# interface file auto-generated by buildroot"; \
46 echo
"iface lo inet loopback"; \
47 ) > $(TARGET_DIR
)/etc
/network
/interfaces
50 NETWORK_DHCP_IFACE
= $(call qstrip
,$(BR2_SYSTEM_DHCP
))
52 ifneq ($(NETWORK_DHCP_IFACE
),)
53 define SET_NETWORK_DHCP
56 echo
"auto $(NETWORK_DHCP_IFACE)"; \
57 echo
"iface $(NETWORK_DHCP_IFACE) inet dhcp"; \
58 ) >> $(TARGET_DIR
)/etc
/network
/interfaces
63 mkdir
-p
$(TARGET_DIR
)/etc
/network
/
64 $(SET_NETWORK_LOCALHOST
)
68 TARGET_FINALIZE_HOOKS
+= SET_NETWORK
70 ifeq ($(BR2_ROOTFS_SKELETON_DEFAULT
),y
)
72 define SYSTEM_ROOT_PASSWD
73 [ -n
"$(TARGET_GENERIC_ROOT_PASSWD)" ] && \
74 TARGET_GENERIC_ROOT_PASSWD_HASH
=$$($(MKPASSWD
) -m
"$(TARGET_GENERIC_PASSWD_METHOD)" "$(TARGET_GENERIC_ROOT_PASSWD)"); \
75 $(SED
) "s,^root:[^:]*:,root:$$TARGET_GENERIC_ROOT_PASSWD_HASH:," $(TARGET_DIR
)/etc
/shadow
77 TARGET_FINALIZE_HOOKS
+= SYSTEM_ROOT_PASSWD
79 ifeq ($(BR2_SYSTEM_BIN_SH_NONE
),y
)
81 rm -f
$(TARGET_DIR
)/bin
/sh
85 ln
-sf
$(TARGET_GENERIC_BIN_SH
) $(TARGET_DIR
)/bin
/sh
88 TARGET_FINALIZE_HOOKS
+= SYSTEM_BIN_SH
90 ifeq ($(BR2_TARGET_GENERIC_GETTY
),y
)
91 ifeq ($(BR2_PACKAGE_SYSVINIT
),y
)
92 # In sysvinit inittab, the "id" must not be longer than 4 bytes, so we
93 # skip the "tty" part and keep only the remaining.
95 $(SED
) '/# GENERIC_SERIAL$$/s~^.*#~$(shell echo $(TARGET_GENERIC_GETTY_PORT) | tail -c+4)::respawn:/sbin/getty -L $(TARGET_GENERIC_GETTY_OPTIONS) $(TARGET_GENERIC_GETTY_PORT) $(TARGET_GENERIC_GETTY_BAUDRATE) $(TARGET_GENERIC_GETTY_TERM) #~' \
96 $(TARGET_DIR
)/etc
/inittab
99 # Add getty to busybox inittab
101 $(SED
) '/# GENERIC_SERIAL$$/s~^.*#~$(TARGET_GENERIC_GETTY_PORT)::respawn:/sbin/getty -L $(TARGET_GENERIC_GETTY_OPTIONS) $(TARGET_GENERIC_GETTY_PORT) $(TARGET_GENERIC_GETTY_BAUDRATE) $(TARGET_GENERIC_GETTY_TERM) #~' \
102 $(TARGET_DIR
)/etc
/inittab
105 TARGET_FINALIZE_HOOKS
+= SYSTEM_GETTY
108 ifeq ($(BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW
),y
)
109 # Find commented line, if any, and remove leading '#'s
110 define SYSTEM_REMOUNT_RW
111 $(SED
) '/^#.*-o remount,rw \/$$/s~^#\+~~' $(TARGET_DIR
)/etc
/inittab
114 # Find uncommented line, if any, and add a leading '#'
115 define SYSTEM_REMOUNT_RW
116 $(SED
) '/^[^#].*-o remount,rw \/$$/s~^~#~' $(TARGET_DIR
)/etc
/inittab
119 TARGET_FINALIZE_HOOKS
+= SYSTEM_REMOUNT_RW
121 endif # BR2_ROOTFS_SKELETON_DEFAULT