1 |
#!/bin/bash |
#!/bin/bash |
2 |
# $Header: /home/cvsd/magellan-cvs/magellan-src/mkinitrd-magellan/livecd/mkinitrd-livecd.in,v 1.2 2008-01-14 19:35:02 niro Exp $ |
# $Id$ |
3 |
|
|
4 |
# mkinitrd-livecd |
# mkinitrd-livecd |
5 |
# |
# |
48 |
MODULES_SATA="${LIBDIR}/mkinitrd/modules.sata" |
MODULES_SATA="${LIBDIR}/mkinitrd/modules.sata" |
49 |
MODULES_PATA="${LIBDIR}/mkinitrd/modules.pata" |
MODULES_PATA="${LIBDIR}/mkinitrd/modules.pata" |
50 |
MODULES_FRAMEBUFFER="${LIBDIR}/mkinitrd/modules.framebuffer" |
MODULES_FRAMEBUFFER="${LIBDIR}/mkinitrd/modules.framebuffer" |
|
MAKEDEV="${LIBDIR}/mkinitrd/MAKEDEV.sh" |
|
51 |
|
|
52 |
compress=1 |
compress=1 |
53 |
allowmissing="" |
allowmissing="" |
95 |
deps=$(awk 'BEGIN { searched=ARGV[2]; ARGV[2]=""; rc=1 } \ |
deps=$(awk 'BEGIN { searched=ARGV[2]; ARGV[2]=""; rc=1 } \ |
96 |
function modname(filename) { match(filename, /\/([^\/]+)\.k?o:?$/, ret); return ret[1] } \ |
function modname(filename) { match(filename, /\/([^\/]+)\.k?o:?$/, ret); return ret[1] } \ |
97 |
function show() { if (orig == searched) { print dep; orig=""; rc=0; exit } } \ |
function show() { if (orig == searched) { print dep; orig=""; rc=0; exit } } \ |
98 |
/^\/lib/ { show(); \ |
/^.*kernel/ { show(); \ |
99 |
orig=modname($1); dep=""; \ |
orig=modname($1); dep=""; \ |
100 |
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)); } } } \ |
101 |
/^ / { dep=sprintf("%s %s", dep, modname($1)); } \ |
/^ / { dep=sprintf("%s %s", dep, modname($1)); } \ |
298 |
[[ ! -e ${LINUXRC} ]] && die "linuxrc '${LINUXRC}' not found." |
[[ ! -e ${LINUXRC} ]] && die "linuxrc '${LINUXRC}' not found." |
299 |
|
|
300 |
# create basic filesystem layout |
# create basic filesystem layout |
301 |
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 |
302 |
|
|
303 |
# install busybox |
# install busybox |
304 |
echo "$(which busybox.mkinitrd)" |
echo "$(which busybox.mkinitrd)" |
318 |
# sbin related |
# sbin related |
319 |
for i in chroot init losetup modprobe pivot_root |
for i in chroot init losetup modprobe pivot_root |
320 |
do |
do |
321 |
# static links |
ln -s ${DEST}/bin/busybox ${DEST}/sbin/${i} || die "${i}" |
|
ln ${DEST}/bin/busybox ${DEST}/sbin/${i} || die "${i}" |
|
322 |
done |
done |
323 |
|
|
324 |
# install run-init |
# install run-init |
326 |
install -m0755 $(which run-init.mkinitrd) ${DEST}/sbin/run-init || die |
install -m0755 $(which run-init.mkinitrd) ${DEST}/sbin/run-init || die |
327 |
|
|
328 |
# install insmod.static |
# install insmod.static |
329 |
echo "$(which insmod.static)" |
#echo "$(which insmod.static)" |
330 |
install -m0755 $(which insmod.static) ${DEST}/sbin/insmod || die |
#install -m0755 $(which insmod.static) ${DEST}/sbin/insmod || die |
331 |
|
|
332 |
# create some needed device nodes |
# install v86d for uvesafb support if installed |
333 |
install -o root -g root -m0754 ${MAKEDEV} ${DEST}/dev/MAKEDEV || die |
if which v86d &> /dev/null |
334 |
( cd ${DEST}/dev; ./MAKEDEV -v generic-nopty) |
then |
335 |
|
echo "$(which v86d)" |
336 |
|
install -m0755 $(which v86d) ${DEST}/sbin/v86d || die |
337 |
|
fi |
338 |
|
|
339 |
## install kernel modules ## |
## install kernel modules ## |
340 |
# generic needed |
# generic needed |