80 lines
1.9 KiB
Plaintext
80 lines
1.9 KiB
Plaintext
#$Id$
|
|
|
|
|
|
|
|
#variables
|
|
[ -z "$MKFS" ] && MKFS="mke2fs -F"
|
|
[ -z "$TUNE2FS" ] && TUNE2FS="tune2fs"
|
|
|
|
|
|
#includes
|
|
source "`dirname $0`/Apps/Devel/src/scripts/targets/Linux"
|
|
|
|
|
|
#functions
|
|
target_image()
|
|
{
|
|
$UMOUNT "$DESTDIR"
|
|
$MKDIR "$DESTDIR" || exit 2
|
|
$DD if="$DEVZERO" of="$DISK_IMAGE" count="$DISK_SIZE" &&
|
|
$MKFS "$DISK_IMAGE" || exit 2
|
|
$MOUNT "$DISK_IMAGE" "$DESTDIR" || exit 2
|
|
target "install"
|
|
RET=$?
|
|
$UMOUNT "$DESTDIR"
|
|
exit $RET
|
|
}
|
|
|
|
|
|
target_iso()
|
|
{
|
|
$MKDIR "$DESTDIR/boot/grub" || exit 2
|
|
$CP "/usr/lib/grub/i386-pc/stage2_eltorito" \
|
|
"$DESTDIR/boot/grub" || exit 2
|
|
$CP "$KERNEL" "$DESTDIR/boot/uKernel" || exit 2
|
|
if [ ! -z "$RAMDISK_IMAGE" ]; then
|
|
$CP "$RAMDISK_IMAGE" "$DESTDIR/boot/initrd.img"
|
|
GRUB_INITRD="initrd /boot/initrd.img"
|
|
fi
|
|
$CAT > "$DESTDIR/boot/grub/menu.lst" << EOF
|
|
default 0
|
|
timeout 10
|
|
|
|
title $VENDOR
|
|
kernel /boot/uKernel $KERNEL_ARGS
|
|
$GRUB_INITRD
|
|
EOF
|
|
[ ! -z "$KERNEL_MODULES" ] && cat "$KERNEL_MODULES" | \
|
|
(cd "$DESTDIR" && tar xzf -)
|
|
$MKISOFS -b "boot/grub/stage2_eltorito" -no-emul-boot \
|
|
-boot-load-size 4 -boot-info-table \
|
|
-o "$CDROM_IMAGE" "$DESTDIR"
|
|
}
|
|
|
|
|
|
target_ramdisk()
|
|
{
|
|
[ -z "$MOUNTPOINT" ] && error "MOUNTPOINT needs to be set"
|
|
$UMOUNT "$MOUNTPOINT"
|
|
$MKDIR "$MOUNTPOINT"
|
|
$DD if="$DEVZERO" of="$RAMDISK_IMAGE" count="$RAMDISK_SIZE"|| exit 2
|
|
$MKFS "$RAMDISK_IMAGE" || exit 2
|
|
[ ! -z "$TUNE2FS" ] && $TUNE2FS -i 0 "$RAMDISK_IMAGE"
|
|
$MOUNT "$RAMDISK_IMAGE" "$MOUNTPOINT" || exit 2
|
|
SUBDIRS="Apps/Unix/src/others/tools" target linuxrc || exit 2
|
|
|
|
DESTDIR="$MOUNTPOINT" _create_directories 'dev' 'proc' 'mnt/cdrom' \
|
|
'sbin'
|
|
|
|
$LN "../mnt/cdrom/usr/bin/sh" "$MOUNTPOINT/sbin/init"
|
|
$CP "Apps/Unix/src/others/tools/linuxrc" "$MOUNTPOINT" || exit 2
|
|
$UMOUNT "$MOUNTPOINT"
|
|
|
|
echo
|
|
echo -n "Compressing ramdisk:"
|
|
$GZIP "$RAMDISK_IMAGE" || exit 2
|
|
$MV "$RAMDISK_IMAGE.gz" "$RAMDISK_IMAGE" || exit 2
|
|
echo
|
|
$DU "$RAMDISK_IMAGE"
|
|
}
|