blob: 06aa140a5eb5fffd4b172d93e92498c16da49b53 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
|
DESCRIPTION = "SysV init scripts"
MAINTAINER = "Chris Larson <kergoth@handhelds.org>"
SECTION = "base"
PRIORITY = "required"
DEPENDS = "makedevs"
DEPENDS_openzaurus = "virtual/kernel"
RDEPENDS = "makedevs"
LICENSE = "GPL"
PR = "r28"
SRC_URI = "file://halt \
file://ramdisk \
file://umountfs \
file://devices \
file://devpts.sh \
file://devpts \
file://hostname.sh \
file://mountall.sh \
file://banner \
file://finish \
file://bootmisc.sh \
file://mountnfs.sh \
file://reboot \
file://checkfs.sh \
file://single \
file://sendsigs \
file://urandom \
file://rmnologin \
file://checkroot.sh \
file://umountnfs.sh \
file://sysfs.sh \
file://device_table.txt"
SRC_URI_append_arm = " file://alignment.sh"
SRC_URI_append_openzaurus = " file://checkversion"
def read_kernel_version(d):
import bb
distro = bb.data.getVar('DISTRO', d, 1)
filename = bb.data.getVar('STAGING_KERNEL_DIR', d, 1)
if distro == "openzaurus":
return file( filename + "/kernel-abiversion", "r" ).read().strip()
else:
return "not important"
KERNEL_VERSION = "${@read_kernel_version(d)}"
do_install () {
#
# Create directories and install device independent scripts
#
install -d ${D}/${sysconfdir}/init.d \
${D}/${sysconfdir}/rcS.d \
${D}/${sysconfdir}/rc0.d \
${D}/${sysconfdir}/rc1.d \
${D}/${sysconfdir}/rc2.d \
${D}/${sysconfdir}/rc3.d \
${D}/${sysconfdir}/rc4.d \
${D}/${sysconfdir}/rc5.d \
${D}/${sysconfdir}/rc6.d \
${D}/${sysconfdir}/default
install -m 0755 ${WORKDIR}/bootmisc.sh ${D}/etc/init.d
install -m 0755 ${WORKDIR}/checkroot.sh ${D}/etc/init.d
install -m 0755 ${WORKDIR}/finish ${D}/etc/init.d
install -m 0755 ${WORKDIR}/halt ${D}/etc/init.d
install -m 0755 ${WORKDIR}/hostname.sh ${D}/etc/init.d
install -m 0755 ${WORKDIR}/mountall.sh ${D}/etc/init.d
install -m 0755 ${WORKDIR}/mountnfs.sh ${D}/etc/init.d
install -m 0755 ${WORKDIR}/ramdisk ${D}/etc/init.d
install -m 0755 ${WORKDIR}/reboot ${D}/etc/init.d
install -m 0755 ${WORKDIR}/rmnologin ${D}/etc/init.d
install -m 0755 ${WORKDIR}/sendsigs ${D}/etc/init.d
install -m 0755 ${WORKDIR}/single ${D}/etc/init.d
install -m 0755 ${WORKDIR}/umountnfs.sh ${D}/etc/init.d
install -m 0755 ${WORKDIR}/urandom ${D}/etc/init.d
install -m 0755 ${WORKDIR}/devpts.sh ${D}/etc/init.d
install -m 0755 ${WORKDIR}/devpts ${D}/etc/default
install -m 0755 ${WORKDIR}/sysfs.sh ${D}/etc/init.d
if [ "${TARGET_ARCH}" = "arm" ]; then
install -m 0755 ${WORKDIR}/alignment.sh ${D}/etc/init.d
fi
#
# Install device dependent scripts
#
if [ "${DISTRO}" == "openzaurus" ]; then
cat ${WORKDIR}/checkversion | sed -e "s,VERSION,${KERNEL_VERSION}-${DISTRO_VERSION}," > ${D}/etc/init.d/checkversion
chmod 0755 ${D}/etc/init.d/checkversion
ln -sf ../init.d/checkversion ${D}/etc/rcS.d/S05version
fi
install -m 0755 ${WORKDIR}/banner ${D}/etc/init.d/banner
install -m 0755 ${WORKDIR}/devices ${D}/etc/init.d/devices
install -m 0755 ${WORKDIR}/umountfs ${D}/etc/init.d/umountfs
#
# Create runlevel links
#
ln -sf ../init.d/rmnologin ${D}/etc/rc2.d/S99rmnologin
ln -sf ../init.d/rmnologin ${D}/etc/rc3.d/S99rmnologin
ln -sf ../init.d/rmnologin ${D}/etc/rc4.d/S99rmnologin
ln -sf ../init.d/rmnologin ${D}/etc/rc5.d/S99rmnologin
ln -sf ../init.d/sendsigs ${D}/etc/rc6.d/S20sendsigs
# ln -sf ../init.d/urandom ${D}/etc/rc6.d/S30urandom
ln -sf ../init.d/umountnfs.sh ${D}/etc/rc6.d/S31umountnfs.sh
# ln -sf ../init.d/umountfs ${D}/etc/rc6.d/S40umountfs
ln -sf ../init.d/ramdisk ${D}/etc/rcS.d/S30ramdisk
ln -sf ../init.d/reboot ${D}/etc/rc6.d/S90reboot
ln -sf ../init.d/sendsigs ${D}/etc/rc0.d/S20sendsigs
# ln -sf ../init.d/urandom ${D}/etc/rc0.d/S30urandom
ln -sf ../init.d/umountnfs.sh ${D}/etc/rc0.d/S31umountnfs.sh
# ln -sf ../init.d/umountfs ${D}/etc/rc0.d/S40umountfs
ln -sf ../init.d/halt ${D}/etc/rc0.d/S90halt
ln -sf ../init.d/banner ${D}/etc/rcS.d/S01banner
ln -sf ../init.d/checkroot.sh ${D}/etc/rcS.d/S10checkroot.sh
# ln -sf ../init.d/checkfs.sh ${D}/etc/rcS.d/S30checkfs.sh
ln -sf ../init.d/mountall.sh ${D}/etc/rcS.d/S35mountall.sh
ln -sf ../init.d/hostname.sh ${D}/etc/rcS.d/S40hostname.sh
ln -sf ../init.d/mountnfs.sh ${D}/etc/rcS.d/S45mountnfs.sh
ln -sf ../init.d/bootmisc.sh ${D}/etc/rcS.d/S55bootmisc.sh
# ln -sf ../init.d/urandom ${D}/etc/rcS.d/S55urandom
ln -sf ../init.d/finish ${D}/etc/rcS.d/S99finish
ln -sf ../init.d/devices ${D}/etc/rcS.d/S04devices
# udev will run at S03 if installed
ln -sf ../init.d/sysfs.sh ${D}/etc/rcS.d/S02sysfs
ln -sf ../init.d/devpts.sh ${D}/etc/rcS.d/S38devpts.sh
if [ "${TARGET_ARCH}" = "arm" ]; then
ln -sf ../init.d/alignment.sh ${D}/etc/rcS.d/S05alignment
fi
install -m 0755 ${WORKDIR}/device_table.txt ${D}/etc/device_table
}
|