diff options
Diffstat (limited to 'scripts/build/binary_memtest')
-rwxr-xr-x | scripts/build/binary_memtest | 119 |
1 files changed, 119 insertions, 0 deletions
diff --git a/scripts/build/binary_memtest b/scripts/build/binary_memtest new file mode 100755 index 0000000..c739c3a --- /dev/null +++ b/scripts/build/binary_memtest @@ -0,0 +1,119 @@ +#!/bin/sh + +# lh_binary_memtest(1) - installs a memtest into binary +# Copyright (C) 2006-2010 Daniel Baumann <daniel@debian.org> +# +# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING. +# This is free software, and you are welcome to redistribute it +# under certain conditions; see COPYING for details. + +set -e + +# Including common functions +. "${LH_BASE:-/usr/share/live-helper}"/scripts/build.sh + +# Setting static variables +DESCRIPTION="$(Echo 'installs a memtest into binary')" +HELP="" +USAGE="${PROGRAM} [--force]" + +Arguments "${@}" + +# Reading configuration files +Read_conffiles config/all config/common config/bootstrap config/chroot config/binary config/source +Set_defaults + +if [ "${LH_BINARY_IMAGES}" = "virtual-hdd" ] || [ "${LH_MEMTEST}" = "false" ] || [ "${LH_MEMTEST}" = "none" ] +then + exit 0 +fi + +Echo_message "Begin installing memtest..." + +# Requiring stage file +Require_stagefile .stage/config .stage/bootstrap + +# Checking stage file +Check_stagefile .stage/binary_memtest + +# Checking lock file +Check_lockfile .lock + +# Creating lock file +Create_lockfile .lock + +if [ "${LH_ARCHITECTURE}" != "amd64" ] && [ "${LH_ARCHITECTURE}" != "i386" ] +then + Echo_warning "skipping binary_memtest, foreign architecture." + exit 0 +fi + +if [ "${LH_BUILD_WITH_CHROOT}" = "true" ] +then + + if [ -f chroot/usr/sbin/grub ] && [ ! -f chroot/boot/grub/menu.lst ] + then + GRUB="yes" + + mkdir -p chroot/boot/grub + touch chroot/boot/grub/menu.lst + fi +fi + +# Checking depends +case "${LH_MEMTEST}" in + memtest86) + Check_package chroot/boot/memtest86.bin memtest86 + ;; + + memtest86+) + Check_package chroot/boot/memtest86+.bin memtest86+ + ;; +esac + +# Restoring cache +Restore_cache cache/packages_binary + +# Installing depends +Install_package + +# Setting destination directory +case "${LH_INITRAMFS}" in + casper) + DESTDIR="binary/casper" + ;; + + live-initramfs) + DESTDIR="binary/live" + ;; +esac + +Check_multiarchitecture + +# Creating directory +mkdir -p "${DESTDIR}" + +# Installing memtest +case "${LH_BUILD_WITH_CHROOT}" in + true) + cp chroot/boot/${LH_MEMTEST}.bin "${DESTDIR}"/memtest + ;; + + false) + cp /boot/${LH_MEMTEST}.bin "${DESTDIR}"/memtest + ;; +esac + +# Saving cache +Save_cache cache/packages_binary + +# Removing depends +Remove_package + +if [ "${GRUB}" ] +then + rm -rf chroot/boot/grub +fi + +# Creating stage file +Create_stagefile .stage/binary_memtest |