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
#!/bin/sh -efu
# predictable file locations make bootloader configuration simple;
# this script relates to features.in/stage2/stage1/scripts.d/81-make-initfs
[ -n "$GLOBAL_KFLAVOURS" ] ||
{ echo "** KFLAVOURS is empty" >&2; exit 0; }
kver=
echo $GLOBAL_KFLAVOURS
for KFLAVOUR in $GLOBAL_KFLAVOURS; do
kver+=" $(rpm -qa 'kernel-image*' \
--qf '%{version}-%{name}-%{release}\n' \
| grep "$KFLAVOUR" \
| sed 's/kernel-image-//')"
done
[ ! -z "${kver#"${kver%%[! ]*}"}" ] ||
{ echo "** unable to deduce kernel version" >&2; exit 1; }
cd /boot
# creating a special initrd.mk
cp /etc/initrd.mk /etc/initrd.mk.oem
echo 'FEATURES += add-modules compress cleanup kbd rdshell rootfs' \
>> /etc/initrd.mk.oem
if [ -n "$GLOBAL_VM_INITRDFEATURES" ]; then
for INITRDFEATURE in $GLOBAL_VM_INITRDFEATURES; do
echo "FEATURES += $INITRDFEATURE" >> /etc/initrd.mk.oem
done
fi
if [ -n "$GLOBAL_VM_INITRDMODULES" ]; then
for INITRDMODULE in $GLOBAL_VM_INITRDMODULES; do
echo "MODULES_TRY_ADD += $INITRDMODULE" >> /etc/initrd.mk.oem
done
fi
for KVER in $kver; do
make-initrd -N -v -k "$KVER" AUTODETECT= -c /etc/initrd.mk.oem \
|| { echo "** Error: make-initrd failed" >&2; exit 1; }
done
case "$GLOBAL_ARCH" in
e2k)
kname=image;;
*)
kname=vmlinuz;;
esac
rm -f $kname initrd.img
ln -s $kname-$KVER $kname ||:
ln -s initrd-$KVER.img initrd.img
: