initscripts: Have sysfs.sh do similar checks to rcS and bump PR.
[openembedded.git] / recipes / initscripts / initscripts_1.0.bb
1 DESCRIPTION = "SysV init scripts"
2 SECTION = "base"
3 PRIORITY = "required"
4 DEPENDS = "makedevs"
5 RDEPENDS = "makedevs"
6 LICENSE = "GPL"
7 PR = "r116"
8
9 SRC_URI = "file://functions \
10            file://halt \
11            file://ramdisk \
12            file://umountfs \
13            file://devices \
14            file://devpts.sh \
15            file://devpts \
16            file://hostname.sh \
17            file://mountall.sh \
18            file://banner \
19            file://finish.sh \
20            file://bootmisc.sh \
21            file://mountnfs.sh \
22            file://reboot \
23            file://checkfs.sh \
24            file://single \
25            file://sendsigs \
26            file://urandom \
27            file://rmnologin \
28            file://checkroot \
29            file://umountnfs.sh \
30            file://sysfs.sh \
31            file://device_table.txt \
32            file://populate-volatile.sh \
33            file://volatiles \
34            file://save-rtc.sh"
35
36 SRC_URI_append_arm = " file://alignment.sh"
37
38 KERNEL_VERSION = ""
39
40 do_install () {
41 #
42 # Create directories and install device independent scripts
43 #
44         install -d ${D}${sysconfdir}/init.d
45         install -d ${D}${sysconfdir}/rcS.d
46         install -d ${D}${sysconfdir}/rc0.d
47         install -d ${D}${sysconfdir}/rc1.d
48         install -d ${D}${sysconfdir}/rc2.d
49         install -d ${D}${sysconfdir}/rc3.d
50         install -d ${D}${sysconfdir}/rc4.d
51         install -d ${D}${sysconfdir}/rc5.d
52         install -d ${D}${sysconfdir}/rc6.d
53         install -d ${D}${sysconfdir}/default
54         install -d ${D}${sysconfdir}/default/volatiles
55
56         install -m 0755    ${WORKDIR}/functions         ${D}${sysconfdir}/init.d
57         install -m 0755    ${WORKDIR}/bootmisc.sh       ${D}${sysconfdir}/init.d
58         install -m 0755    ${WORKDIR}/checkroot         ${D}${sysconfdir}/init.d
59         install -m 0755    ${WORKDIR}/finish.sh         ${D}${sysconfdir}/init.d
60         install -m 0755    ${WORKDIR}/halt              ${D}${sysconfdir}/init.d
61         install -m 0755    ${WORKDIR}/hostname.sh       ${D}${sysconfdir}/init.d
62         install -m 0755    ${WORKDIR}/mountall.sh       ${D}${sysconfdir}/init.d
63         install -m 0755    ${WORKDIR}/mountnfs.sh       ${D}${sysconfdir}/init.d
64         install -m 0755    ${WORKDIR}/ramdisk           ${D}${sysconfdir}/init.d
65         install -m 0755    ${WORKDIR}/reboot            ${D}${sysconfdir}/init.d
66         install -m 0755    ${WORKDIR}/rmnologin ${D}${sysconfdir}/init.d
67         install -m 0755    ${WORKDIR}/sendsigs          ${D}${sysconfdir}/init.d
68         install -m 0755    ${WORKDIR}/single            ${D}${sysconfdir}/init.d
69         install -m 0755    ${WORKDIR}/umountnfs.sh      ${D}${sysconfdir}/init.d
70         install -m 0755    ${WORKDIR}/urandom           ${D}${sysconfdir}/init.d
71         install -m 0755    ${WORKDIR}/devpts.sh ${D}${sysconfdir}/init.d
72         install -m 0755    ${WORKDIR}/devpts            ${D}${sysconfdir}/default
73         install -m 0755    ${WORKDIR}/sysfs.sh          ${D}${sysconfdir}/init.d
74         install -m 0755    ${WORKDIR}/populate-volatile.sh ${D}${sysconfdir}/init.d
75         install -m 0755    ${WORKDIR}/save-rtc.sh       ${D}${sysconfdir}/init.d
76         install -m 0644    ${WORKDIR}/volatiles         ${D}${sysconfdir}/default/volatiles/00_core
77         if [ "${TARGET_ARCH}" = "arm" ]; then
78                 install -m 0755 ${WORKDIR}/alignment.sh ${D}${sysconfdir}/init.d
79         fi
80 #
81 # Install device dependent scripts
82 #
83         install -m 0755 ${WORKDIR}/banner       ${D}${sysconfdir}/init.d/banner
84         install -m 0755 ${WORKDIR}/devices      ${D}${sysconfdir}/init.d/devices
85         install -m 0755 ${WORKDIR}/umountfs     ${D}${sysconfdir}/init.d/umountfs
86 #
87 # Create runlevel links
88 #
89         ln -sf          ../init.d/rmnologin     ${D}${sysconfdir}/rc2.d/S99rmnologin
90         ln -sf          ../init.d/rmnologin     ${D}${sysconfdir}/rc3.d/S99rmnologin
91         ln -sf          ../init.d/rmnologin     ${D}${sysconfdir}/rc4.d/S99rmnologin
92         ln -sf          ../init.d/rmnologin     ${D}${sysconfdir}/rc5.d/S99rmnologin
93         ln -sf          ../init.d/sendsigs      ${D}${sysconfdir}/rc6.d/S20sendsigs
94 #       ln -sf          ../init.d/urandom       ${D}${sysconfdir}/rc6.d/S30urandom
95         ln -sf          ../init.d/umountnfs.sh  ${D}${sysconfdir}/rc6.d/S31umountnfs.sh
96         ln -sf          ../init.d/umountfs      ${D}${sysconfdir}/rc6.d/S40umountfs
97         # udev will run at S55 if installed
98         ln -sf          ../init.d/ramdisk       ${D}${sysconfdir}/rcS.d/S30ramdisk
99         ln -sf          ../init.d/reboot        ${D}${sysconfdir}/rc6.d/S90reboot
100         ln -sf          ../init.d/sendsigs      ${D}${sysconfdir}/rc0.d/S20sendsigs
101 #       ln -sf          ../init.d/urandom       ${D}${sysconfdir}/rc0.d/S30urandom
102         ln -sf          ../init.d/umountnfs.sh  ${D}${sysconfdir}/rc0.d/S31umountnfs.sh
103         ln -sf          ../init.d/umountfs      ${D}${sysconfdir}/rc0.d/S40umountfs
104         # udev will run at S55 if installed
105         ln -sf          ../init.d/halt          ${D}${sysconfdir}/rc0.d/S90halt
106         ln -sf          ../init.d/save-rtc.sh   ${D}${sysconfdir}/rc0.d/S25save-rtc.sh
107         ln -sf          ../init.d/save-rtc.sh   ${D}${sysconfdir}/rc6.d/S25save-rtc.sh
108         ln -sf          ../init.d/banner        ${D}${sysconfdir}/rcS.d/S02banner
109         ln -sf          ../init.d/checkroot             ${D}${sysconfdir}/rcS.d/S10checkroot
110 #       ln -sf          ../init.d/checkfs.sh    ${D}${sysconfdir}/rcS.d/S30checkfs.sh
111         ln -sf          ../init.d/mountall.sh   ${D}${sysconfdir}/rcS.d/S35mountall.sh
112         ln -sf          ../init.d/hostname.sh   ${D}${sysconfdir}/rcS.d/S39hostname.sh
113         ln -sf          ../init.d/mountnfs.sh   ${D}${sysconfdir}/rcS.d/S45mountnfs.sh
114         ln -sf          ../init.d/bootmisc.sh   ${D}${sysconfdir}/rcS.d/S55bootmisc.sh
115 #       ln -sf          ../init.d/urandom       ${D}${sysconfdir}/rcS.d/S55urandom
116         ln -sf          ../init.d/finish.sh     ${D}${sysconfdir}/rcS.d/S99finish.sh
117         ln -sf          ../init.d/devices       ${D}${sysconfdir}/rcS.d/S05devices
118         # udev will run at S04 if installed
119         ln -sf          ../init.d/sysfs.sh      ${D}${sysconfdir}/rcS.d/S03sysfs
120         ln -sf          ../init.d/populate-volatile.sh  ${D}${sysconfdir}/rcS.d/S37populate-volatile.sh
121         ln -sf          ../init.d/devpts.sh     ${D}${sysconfdir}/rcS.d/S38devpts.sh
122         if [ "${TARGET_ARCH}" = "arm" ]; then
123                 ln -sf  ../init.d/alignment.sh  ${D}${sysconfdir}/rcS.d/S06alignment
124         fi
125
126         install -m 0755         ${WORKDIR}/device_table.txt             ${D}${sysconfdir}/device_table
127 }
128
129 # Angstrom doesn't support devfs
130 do_install_append_angstrom () {
131         rm ${D}${sysconfdir}/init.d/devices ${D}${sysconfdir}/rcS.d/S05devices
132 }
133
134 # HIPOX needs /sys in reboot for kexec check
135 do_install_append_hipox () {
136         ln -sf          ../init.d/sysfs.sh      ${D}${sysconfdir}/rc6.d/S80sysfs
137 }