1 |
#!/bin/bash |
#!/bin/bash |
2 |
# $Header: /home/cvsd/magellan-cvs/magellan-src/mkinitrd-magellan/livecd/mkinitrd-livecd.in,v 1.3 2008-03-31 13:50:09 niro Exp $ |
# $Id$ |
3 |
|
|
4 |
# mkinitrd-livecd |
# mkinitrd-livecd |
5 |
# |
# |
96 |
deps=$(awk 'BEGIN { searched=ARGV[2]; ARGV[2]=""; rc=1 } \ |
deps=$(awk 'BEGIN { searched=ARGV[2]; ARGV[2]=""; rc=1 } \ |
97 |
function modname(filename) { match(filename, /\/([^\/]+)\.k?o:?$/, ret); return ret[1] } \ |
function modname(filename) { match(filename, /\/([^\/]+)\.k?o:?$/, ret); return ret[1] } \ |
98 |
function show() { if (orig == searched) { print dep; orig=""; rc=0; exit } } \ |
function show() { if (orig == searched) { print dep; orig=""; rc=0; exit } } \ |
99 |
/^\/lib/ { show(); \ |
/^.*kernel/ { show(); \ |
100 |
orig=modname($1); dep=""; \ |
orig=modname($1); dep=""; \ |
101 |
if ($2) { for (i = 2; i <= NF; i++) { dep=sprintf("%s %s", dep, modname($i)); } } } \ |
if ($2) { for (i = 2; i <= NF; i++) { dep=sprintf("%s %s", dep, modname($i)); } } } \ |
102 |
/^ / { dep=sprintf("%s %s", dep, modname($1)); } \ |
/^ / { dep=sprintf("%s %s", dep, modname($1)); } \ |
299 |
[[ ! -e ${LINUXRC} ]] && die "linuxrc '${LINUXRC}' not found." |
[[ ! -e ${LINUXRC} ]] && die "linuxrc '${LINUXRC}' not found." |
300 |
|
|
301 |
# create basic filesystem layout |
# create basic filesystem layout |
302 |
install -d ${DEST}/{bin,dev,etc,lib,loopfs,proc,sbin,sys,sysroot} || die |
install -d ${DEST}/{bin,dev,etc,lib,loopfs,proc,sbin,sys,sysroot,usr/bin,usr/sbin} || die |
303 |
|
|
304 |
# install busybox |
# install busybox |
305 |
echo "$(which busybox.mkinitrd)" |
echo "$(which busybox.mkinitrd)" |
319 |
# sbin related |
# sbin related |
320 |
for i in chroot init losetup modprobe pivot_root |
for i in chroot init losetup modprobe pivot_root |
321 |
do |
do |
322 |
# static links |
ln -s ${DEST}/bin/busybox ${DEST}/sbin/${i} || die "${i}" |
|
ln ${DEST}/bin/busybox ${DEST}/sbin/${i} || die "${i}" |
|
323 |
done |
done |
324 |
|
|
325 |
# install run-init |
# install run-init |
327 |
install -m0755 $(which run-init.mkinitrd) ${DEST}/sbin/run-init || die |
install -m0755 $(which run-init.mkinitrd) ${DEST}/sbin/run-init || die |
328 |
|
|
329 |
# install insmod.static |
# install insmod.static |
330 |
echo "$(which insmod.static)" |
#echo "$(which insmod.static)" |
331 |
install -m0755 $(which insmod.static) ${DEST}/sbin/insmod || die |
#install -m0755 $(which insmod.static) ${DEST}/sbin/insmod || die |
332 |
|
|
333 |
# install v86d for uvesafb support if installed |
# install v86d for uvesafb support if installed |
334 |
if which v86d &> /dev/null |
if which v86d &> /dev/null |
335 |
then |
then |
336 |
echo "$(which insmod.static)" |
echo "$(which v86d)" |
337 |
install -m0755 $(which v86d) ${DEST}/sbin/v86d || die |
install -m0755 $(which v86d) ${DEST}/sbin/v86d || die |
338 |
fi |
fi |
339 |
|
|
340 |
# create some needed device nodes |
# create some needed device nodes |
341 |
install -o root -g root -m0754 ${MAKEDEV} ${DEST}/dev/MAKEDEV || die |
#install -o root -g root -m0754 ${MAKEDEV} ${DEST}/dev/MAKEDEV || die |
342 |
( cd ${DEST}/dev; ./MAKEDEV -v generic-nopty) |
#( cd ${DEST}/dev; ./MAKEDEV -v generic-nopty) |
343 |
|
|
344 |
## install kernel modules ## |
## install kernel modules ## |
345 |
# generic needed |
# generic needed |