aboutsummaryrefslogtreecommitdiffstats
path: root/main/mkinitfs/mkinitfs.trigger
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2009-09-23 11:30:26 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2009-09-23 11:30:26 +0000
commitb6a253b9e2c2dd7021fd1812fa81d0b49fae9056 (patch)
treee65eb71bafb19362b02f79d430707f6e05cfb8f1 /main/mkinitfs/mkinitfs.trigger
parent780930c5ff7ae95c7025772f69028a687a6a51e0 (diff)
downloadaports-b6a253b9e2c2dd7021fd1812fa81d0b49fae9056.tar.bz2
aports-b6a253b9e2c2dd7021fd1812fa81d0b49fae9056.tar.xz
main/mkinitfs: use trigger to create kernel links
Diffstat (limited to 'main/mkinitfs/mkinitfs.trigger')
-rw-r--r--main/mkinitfs/mkinitfs.trigger27
1 files changed, 25 insertions, 2 deletions
diff --git a/main/mkinitfs/mkinitfs.trigger b/main/mkinitfs/mkinitfs.trigger
index be15f52f0f..4117524c22 100644
--- a/main/mkinitfs/mkinitfs.trigger
+++ b/main/mkinitfs/mkinitfs.trigger
@@ -2,7 +2,30 @@
for i in "$@"; do
# get last element in path
- kver=${i##*/}
- mkinitfs $kver
+ flavor=${i##*/}
+ abi_release=$(cat "$i"/kernel.release)
+ initfs=initramfs-$abi_release
+ mkinitfs -o /boot/$initfs $abi_release
+ ln -sf $initfs /boot/initramfs-$flavor
+ ln -sf vmlinuz-$abi_release /boot/vmlinuz-$flavor
+
+ # extlinux will use path relative partition, so if /boot is on a
+ # separate partition we want /boot/<kernel> resolve to /<kernel>
+ ln -sf / /boot/boot
+
+ #this is for compat. to be removed eventually...
+ ln -sf vmlinuz-$flavor /boot/$flavor
+ ln -sf initramfs-$flavor /boot/$flavor.gz
+ ln -sf /boot/vmlinuz-$flavor /$flavor
+ ln -sf /boot/initramfs-$flavor /$flavor.gz
+
+ # Update the /boot/extlinux.conf to point to correct kernel
+ f=/boot/extlinux.conf
+ if [ -f $f ] && grep -q -- "kernel /$flavor" $f; then
+ sed -i -e "s:kernel /$flavor:kernel /boot/vmlinuz-$flavor:" \
+ -e "s:initrd=/$flavor.gz:initrd=/boot/initramfs-$flavor:" \
+ -e "s:initrd /$flavor.gz:initrd /boot/initramfs-$flavor:" \
+ $f
+ fi
done